JavaScript单元测试
2016-07-15 15:35
411 查看
编写代码时,以单元测试代码伴随正式的功能代码是很好的实践和习惯,不仅可以保证最终代码的质量,对用户负责,也可以让自己对写出的代码更有信心和把握。JavaScript在现代Web开发中占的比重越来越大,早已不是在页面中插入几行代码的时代,自然也应该做单元测试。而且作为一种弱类型的动态语言,不仅无法检查编译时类型错误,高度的灵活性也容易隐藏输入时的失误,单元测试以保证代码能如预期运行就更为必要。另一方面,与Java等编程语言相比,JavaScript的单元测试又有一些前期工作和事项需要注意。
1. 分离和组织代码。初学者习惯将JavaScript和html代码混杂在一起,实际上相当于把业务逻辑层和显示层混杂。这样既无法测试与显示无关的代码,即使是测试要修改html的代码也不方便。好的做法是将JavaScript和html代码分开,功能代码放在单独的脚本文件里,测试代码放在另一个脚本文件里。这样不仅有利于测试,对开发和维护本身都有利。
2. 按功能分类测试。JavaScript从功能上可以分为与DOM有关的和无关的两大类。与DOM无关的包括字符串、日期、数字处理,程序框架如原型和对象处理等。对它们的测试不需要特定的页面。要读写DOM的代码又可以分为通用的和应用程序特定的两类。前者可以设计若干个通用测试页面,后者则必须和应用程序最终的页面一起测试。所有功能上通用的JavaScript代码都和第三方类库一样,一旦测试通过就一劳永逸,实际项目开发只需编写特定的代码和其对应的测试代码。
3. 使用单元测试类库。开发有开发的类库,测试也有测试的类库,可以帮助我们方便和高效地测试。JavaScript的单元测试类库也很多,QUnit、JsUnit、Unit JS,挑选的原则和挑选开发类库一样。看看示例代码,动手试验一下。个人经验是决定选择的标准。
1. 分离和组织代码。初学者习惯将JavaScript和html代码混杂在一起,实际上相当于把业务逻辑层和显示层混杂。这样既无法测试与显示无关的代码,即使是测试要修改html的代码也不方便。好的做法是将JavaScript和html代码分开,功能代码放在单独的脚本文件里,测试代码放在另一个脚本文件里。这样不仅有利于测试,对开发和维护本身都有利。
2. 按功能分类测试。JavaScript从功能上可以分为与DOM有关的和无关的两大类。与DOM无关的包括字符串、日期、数字处理,程序框架如原型和对象处理等。对它们的测试不需要特定的页面。要读写DOM的代码又可以分为通用的和应用程序特定的两类。前者可以设计若干个通用测试页面,后者则必须和应用程序最终的页面一起测试。所有功能上通用的JavaScript代码都和第三方类库一样,一旦测试通过就一劳永逸,实际项目开发只需编写特定的代码和其对应的测试代码。
3. 使用单元测试类库。开发有开发的类库,测试也有测试的类库,可以帮助我们方便和高效地测试。JavaScript的单元测试类库也很多,QUnit、JsUnit、Unit JS,挑选的原则和挑选开发类库一样。看看示例代码,动手试验一下。个人经验是决定选择的标准。
相关文章推荐
- js弹出框 -搜索
- 发现jseeite的如果需要新建表,一定要把gen_table和gen_table_column删除
- Google Gson的使用方法,实现Json结构的相互转换
- 实现多个下拉框同一批option,选中其一其他框里去除选中的项(不可选择已选过的项)--js
- js是函数式的面向对象编程语言
- js判断手机号是否正确
- jsp中常用的内置对象
- JS正则表达式基础总结
- 校验时间是否是一年
- js依据合同生效日和到期日算合同年限,以年为单位
- Jsoup使用的坑
- 对js闭包的理解
- xml字符串转json
- js中ajax
- js闭包的定义
- JavaScript
- js中function的与众不同
- Ext.slider控件的用法
- JS保留正数小数2位
- CSS实现竖排导航栏/图像选择【HTML/JS】