一、单元测试的原则
从不同的角度,可以将测试划分为如下不同的种类:
单元测试是一种自动化测试,测试代码和被测的对象非常相关,比如测试React组件的代码就和测试jQuery的插件的代码完全不是一回事。
单元测试代码一般都由编写对应功能代码的开发者来编写,开发者提交的单元测试代码应该保持一定的覆盖率,而且必须永远能够运行通过。可以说,单元测试是保证代码质量的第一道防线。
开发者应该注意:
首先,即使单元测试覆盖率达到100%,也不表示程序是没有bug的;
另外,程序架构的可测试性非常重要,需要架构能把程序拆分成足够小到方便测试的部分,只要每个小的部分被验证能够正确的各司其职,组合起来能够完成整体功能,那么开发者编写的单元测试就可以专注于测试各个小的部分就行,这就是更高的可测试性。
二、单元测试环境搭建
create-react-app创建的应用中自带了Jest库,Jest会自动在当前目录下寻找满足下列任一条件的JavaScript文件作为单元测试代码来执行:
组织多个it函数实例,即测试套件。
在Jest中用describe函数描述测试套件,一个测试套件的代码如下:
describe('actions',()=>{
it('should return object when invoked',()=>{});
//可以有更多的it函数调用
})
describe函数包含与it函数一样的参数,两者主要的区别就是describe可以包含it或者另一个describe函数调用,但是it却不能。
describe中有如下特殊函数可以帮助重用代码:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。