创建单元测试-编写测试用例 and执行测试用例
2018-01-17 10:21
363 查看
编写测试用例
编写单元测试一版遵循3A模式:
Arrange(准备)。设置测试场景,准备测试数据
Act(执行)。调用被测试代码
Assert(断言)。验证被测代码的行为是否与预期相同
在jasmine-demo\spec\Basic目录下创建Calc_spec.js,添加如下测试代码:
单元测试验证测试结果通常使用断言的形式,也就是将期望的结果与实际的结果相比较,一致说明测试通过,不一致说明测试失败。上面代码中的
我们能想到所有的测试用例应该至少包含一条断言。
执行测试用例
执行测试用例,我们可以仿照下载的jasmine中包含的例子来写。
复制SpecRunner.html到jasmine-demo中,用编辑器打开,对立面的内容进行修改,修改如下:
主要修改的有:
1.文档标题
2.文件路径,jasmine例子中的文件都包含在我们下载的jasmine-core的文件目录下,找到文件对应的目录改写即可。
3.source文件名与路径
4.测试用例文件名和路径
运行结果
一个测试用例通过。
上面的例子是书中现成的例子,现在来举一反三。
测试用例:1+2 !=5 ;
再源代码中加个乘法;
测试用例:2 * 5= 10; 2 * 10!=15
calc.js中添加代码:
Calc_spec.js中代码为:
结果:
编写单元测试一版遵循3A模式:
Arrange(准备)。设置测试场景,准备测试数据
Act(执行)。调用被测试代码
Assert(断言)。验证被测代码的行为是否与预期相同
在jasmine-demo\spec\Basic目录下创建Calc_spec.js,添加如下测试代码:
describe('Calculator',function(){ var calc; beforeAll(function(){ calc = new Calculator(); }) describe('Test Add',function(){ it('add 1 and 3 should equal 4 ',function(){ var result = calc.add(1,3); expect(result).toBe(4); }) }) })
单元测试验证测试结果通常使用断言的形式,也就是将期望的结果与实际的结果相比较,一致说明测试通过,不一致说明测试失败。上面代码中的
expect(result).toBe(4);指的是1+3得到的结果是否等于4.
我们能想到所有的测试用例应该至少包含一条断言。
执行测试用例
执行测试用例,我们可以仿照下载的jasmine中包含的例子来写。
复制SpecRunner.html到jasmine-demo中,用编辑器打开,对立面的内容进行修改,修改如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Calculator Test</title> <link rel="shortcut icon" type="image/png" href="node_modules/jasmine-core/images/jasmine_favicon.png"> <link rel="stylesheet" href="node_modules/jasmine-core/lib/jasmine-core/jasmine.css"> <script src="node_modules/jasmine-core/lib/jasmine-core/jasmine.js"></script> <script src="node_modules/jasmine-core/lib/jasmine-core/jasmine-html.js"></script> <script src="node_modules/jasmine-core/lib/jasmine-core/boot.js"></script> <!-- include source files here... --> <script src="src/Basic/Calc.js"></script> <!-- include spec files here... --> <script src="spec/Basic/Calc_spec.js"></script> </head> <body> </body> </html>
主要修改的有:
1.文档标题
2.文件路径,jasmine例子中的文件都包含在我们下载的jasmine-core的文件目录下,找到文件对应的目录改写即可。
3.source文件名与路径
4.测试用例文件名和路径
运行结果
一个测试用例通过。
上面的例子是书中现成的例子,现在来举一反三。
测试用例:1+2 !=5 ;
再源代码中加个乘法;
测试用例:2 * 5= 10; 2 * 10!=15
calc.js中添加代码:
Calculator.prototype.multiply = function (a,b){ return a*b; }
Calc_spec.js中代码为:
describe('Calculator',function(){ var calc; beforeAll(function(){ calc = new Calculator(); }) describe('Test Add',function(){ it('add 1 and 3 should equal 4 ',function(){ var result = calc.add(1,3); expect(result).toBe(4); }); it('add 1 and 2 should not equal 5 ',function(){ var result = calc.add(1,2); expect(result).not.toBe(5); }) }) describe('Test multiply',function(){ it('multipled 2 and 5 should equal 10 ',function(){ var result = calc.multiply(2,5); expect(result).toBe(10); }); it('multipled 2 and 10 should not equal 15 ',function(){ var result = calc.multiply(2,10); expect(result).not.toBe(15); }) }) })
结果:
相关文章推荐
- 对于用Powermock编写的测试用例,sonar中单元测试覆盖率统计不正确的问题
- VS2010编写动态链接库DLL及单元测试用例,调用DLL测试正确性
- 使用testng+xml编写、执行自动化测试用例
- 2、编写单元测试用例,对用户注册功能的DAO层进行测试。(注意:测试用例应考虑成功和失败的情况)
- 最完整的自动化测试流程:Python编写执行测试用例及定时自动发送最新测试报告邮件
- VS2010编写动态链接库DLL及单元测试用例,调用DLL测试正确性
- 最完整的自动化测试流程:Python编写执行测试用例及定时自动发送最新测试报告邮件
- Python单元测试框架之pytest---如何执行测试用例
- 测试驱动javascript开发 -- 2.单元测试一例:学习断言、测试用例函数的编写
- 最完整的自动化测试流程:Python编写执行测试用例及定时自动发送最新测试报告邮件
- 单元测试的测试用例编写方法
- 单元测试一例:学习断言、测试用例函数的编写
- 最完整的自动化测试流程:Python编写执行测试用例及定时自动发送最新测试报告邮件
- VS2010编写动态链接库DLL及单元测试用例,调用DLL测试正确性
- VS2010编写动态链接库DLL及单元测试用例,调用DLL测试正确性
- 以下题目均在bookstore项目上完成(请先运行数据库文件): 1、编写单元测试用例,对用户注册功能的Action层进行测试。(注意:测试用例应考虑成功和失败的情况)
- 编写测试用例时参照实际项目还是需求文档?
- 测试用例编写规范
- 如何编写单元测试用例(白盒测试)
- 接口测试用例编写举例