2016-04-10 craneyuan
什么是Check Check是C语言的一个单元测试框架。它提供一个小巧的单元测试接口。测试案例运行在各自独立的地址空间,所以断言失败和代码错误造成的段错误或者其他的信号可以被捕捉到。另外,测试的结果显示也兼容以下这些格式:Subunit、TAP、XML和通用的日志格式。 Check is a unit testing framework for C. It features a simple interface for defining unit tests, putting little in the way of the developer. Tests are run in a separate address space 继续阅读 »
2016-08-24 Wenjie Yao
本文翻译自liusy182   Jest框架是facebook旗下一款单元测试框架,我个人十分喜欢它,因为它自动mock这一点十分强大。然而,当它遇到问题的时候,就会经常抛出一些模糊的调用栈信息。我在网上搜索尝试找到如何debug Jest测试的方法,却很难找到有用的信息。总之,它仍然还是一个比较新的测试框架。   Jest使用虚拟DOM来运行测试。这一点不同于Karma和Jasmine(它们是利用浏览器来运行测试的)。我觉得这就会给它带来一个很大的缺点:不能使用浏览器上的调试工具来调试Jest的测试。因此,我们需要借助于Node/V8引擎自带的调试器。Node默认的调试器是完全基于命令行形式的,类似于GDB - 虽然我从来就不 继续阅读 »
2016-03-26 Kejin
开发安卓也有很长一段时间了,但是很少用到测试框架, 平时写用都靠打 log 进行调试和测试, 运行的对不对,异常情况的处理,边界条件的处理,全靠自己的想象,写出来的代码和应用健壮性可想而知! 所以学习测试框架是很有必要的一件事,虽然在公司可能很少会用到,因为你可能没有时间去写一个测试案例! 其工作量不亚于实现一个应用功能, 但是我觉得测试是对自己所写代码的一种负责! 继续阅读 »
2017-02-22 leung
``` module.exports = function(config) { var files = []; files.push('newifi/@(jquery*|newifi).js'); files.push('index.html'); files.push('../../test/.coffee'); files.push('../../test/.js'); var otherFiles = [ 'newifi//!(jquery*|newifi|angular*|bootstrap|echarts*).js', 'newifi//.cs 继续阅读 »
2017-02-17 leung
``` module.exports = function(config) { var globSync = require("glob").sync; var files = globSync('newifi/@(jquery*|newifi).js', { cwd: 'web/htdocs' }); var otherJsFiles = globSync('newifi//!(jquery*|newifi|angular*|bootstrap|echarts*).{js,json}', { cwd: 'web/htdocs' }); var cssFiles = globSync('newifi/ 继续阅读 »
2014-08-06 walter lee
单元测试工具对比 1 Junit or TestNg TestNG和JUnit是针对Java语言的两个比较常用的测试框架。JUnit出现的比较早,但是早期的JUnit 3对测试代码有非常多的限制,使用起来很不方便,后来的JUnit 4得到很大的改进。TestNG的出现介于JUnit 3和JUnit 4,但是TestNG在很多方面还要优于JUnit 4。下面从整体上对TestNG和JUnit 4进行比较全面的比较。 1.1 TestNG与JUnit的相同点: 使用annotation,且大部分annotation相同。 都可以进行单元测试(Unit test)。 都是针对Java测试的工具。 继续阅读 »
2016-12-18 Eric Wang
Java日志框架 作为一个Java程序员,肯定离不开日志框架,现在最优秀的Java日志框架是Log4j2,没有之一。根据官方的测试表明,在多线程环境下,Log4j2的异步日志表现更加优秀。在异步日志中,Log4j2使用独立的线程去执行I/O操作,可以极大地提升应用程序的性能。 在官方的测试中,下图比较了Sync、Async Appenders和Loggers all async三者的性能。其中Loggers all async表现最为出色,而且线程数越多,Loggers all async性能越好。 除了对Log4j2自身的不同模式做对比以外,官方还做了Log4j2/Log4j1/Logback的对比,如下图所示 其 继续阅读 »
2016-07-05 jude
这是一个基础算法系列,主题是:为什么知道原理还是写不出正确的程序呢? 第一篇已经写好,叫做我尝试去写快排,结果。。。。文章结构都差不多:原理、联想、用法、框架、分步实现、完整代码及测试用例。 原理 插入排序的原理是: - 将集合分为两个部分:已排好的部分和待排序的部分 - 每次从待排序部分抽一个元素跟已排好部分中的元素逐一比较,直到找到合适的位置,插入待排序元素 - 合适的位置可以是第一个比待排序元素小(大)的,也可能是已排好部分的下界 继续阅读 »
2020-05-27 geekspeng
忽略所有 Web性能基准测试,包括这个 几个月前,有一篇名为 Async Python is Not Faster 的文章在社交媒体上广为流传。在这篇文章中,作者 Cal Paterson 指出,与普遍的看法相反,异步 web 框架不仅“不比传统的同步框架快” ,而且还更慢。他通过展示他实施的相当完整的基准测试的结果来支持这一点。 我希望一切都像作者在他的博客文章中所说的那样简单,但是事实是,衡量Web应用程序的性能异常复杂,并且他在实施基准和对结果的解释上都犯了一些错误。 在本文中,你可以看到我在理解和修复此基准,重新运行该基准以及最终得出令人震惊的发现所做的努力。 继续阅读 »