测试技术之编写测试用例
白羽 2018-06-21 来源 :网络 阅读 1450 评论 0

摘要:本文将带你了解测试技术之编写测试用例,希望对大家学测试技术有所帮助。


  编写测试用例

  编写单元测试一版遵循3A模式:

  Arrange(准备)。设置测试场景,准备测试数据

  Act(执行)。调用被测试代码

  Assert(断言)。验证被测代码的行为是否与预期相同

  在jasmine-demo\spec\Basic目录下创建Calc_spec.js,添加如下测试代码:

  describe('Calculator',function(){

  varcalc;

  beforeAll(function(){

  calc=newCalculator();

  })

  describe('TestAdd',function(){

  it('add1and3shouldequal4',function(){

  varresult=calc.add(1,3);

  expect(result).toBe(4);

  })

  })

  })

   

  单元测试验证测试结果通常使用断言的形式,也就是将期望的结果与实际的结果相比较,一致说明测试通过,不一致说明测试失败。上面代码中的expect(result).toBe(4);指的是1+3得到的结果是否等于4.

  我们能想到所有的测试用例应该至少包含一条断言。

  执行测试用例

  执行测试用例,我们可以仿照下载的jasmine中包含的例子来写。

  复制SpecRunner.html到jasmine-demo中,用编辑器打开,对立面的内容进行修改,修改如下:

  <!DOCTYPEhtml>

  <html>

  <head>

  <metacharset="utf-8">

  <title>CalculatorTest</title>

  <linkrel="shortcuticon"type="image/png"href="node_modules/jasmine-core/images/jasmine_favicon.png">

  <linkrel="stylesheet"href="node_modules/jasmine-core/lib/jasmine-core/jasmine.css">

  <scriptsrc="node_modules/jasmine-core/lib/jasmine-core/jasmine.js"></script>

  <scriptsrc="node_modules/jasmine-core/lib/jasmine-core/jasmine-html.js"></script>

  <scriptsrc="node_modules/jasmine-core/lib/jasmine-core/boot.js"></script>

  <!--includesourcefileshere...-->

  <scriptsrc="src/Basic/Calc.js"></script>

  <!--includespecfileshere...-->

  <scriptsrc="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){

  returna*b;

  }

   

  Calc_spec.js中代码为:

  describe('Calculator',function(){

  varcalc;

  beforeAll(function(){

  calc=newCalculator();

  })

  describe('TestAdd',function(){

  it('add1and3shouldequal4',function(){

  varresult=calc.add(1,3);

  expect(result).toBe(4);

  });

  it('add1and2shouldnotequal5',function(){

  varresult=calc.add(1,2);

  expect(result).not.toBe(5);

  })

  })

  describe('Testmultiply',function(){

  it('multipled2and5shouldequal10',function(){

  varresult=calc.multiply(2,5);

  expect(result).toBe(10);

  });

  it('multipled2and10shouldnotequal15',function(){

  varresult=calc.multiply(2,10);

  expect(result).not.toBe(15);

  })

  })

  })

   

  结果:

 

 测试技术之编写测试用例


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标软件测试之测试技术频道!


本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved