初识gauge自动化测试框架(二)

发表于:2021-4-07 09:23

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:虫师    来源:博客园

  Gauge本质上一个BDD(BehaviorDrivenDevelopment)测试框架。所以,首先你要了解BDD的操作方式。
  BDD包含两部分,一部分是:软件行为描述。另一部分是:针对描述编写测试代码
  首先,行为描述文件描述如下
#计算器
我想实现一个简单的计算器,这个计算器可以做两个数的加、减、乘、除运算。
##测试加法
*创建Calculator类。
*相使用add方法,计算3加5的结果为8。
  创建一个行为文件specs/calculator.spec,将上面的内容翻译一下:
#Calculator
I'mimplementingasimplecalculatorthatcanadd,
subtract,multiply,anddividetwonumbers.
##Testaddition
*CreateaClassCalculator.
*UsingAddmethod,digital"3"plus"5"resultis"8".
  唯一和其它BDD框架不同之处在于,Guage的行为描述文件是由markdown话法编写。
  比如Python的BDD框架behave是由一些关键字组成(Feature、Scenario、Given、When、Then等)。
#--FILE:features/example.feature
Feature:Showingoffbehave
Scenario:Runasimpletest
Givenwehavebehaveinstalled
Whenweimplement5tests
Thenbehavewilltestthemforus!
  好了,我上面用markdown写的行为文件我想你是可以看懂的,如果实在不懂markdown语法的话。也许这个在线工具可以帮你快速学习:
  http://mahua.jser.me/
  再接下来,针对行为文件来写代码实现。创建setp_impl/calculator.py文件。
fromgetgauge.pythonimportstep
@step("CreateaClassCalculator.")
defcreate_Calculator():
calc=Calculator()
@step("UsingAddmethod,digital<a>plus<b>resultis<c>.")
deftest_add(a,b,c):
calc=Calculator()
result=calc.add(a,b)
assertresult==int(c)
classCalculator():
defadd(self,x,y):
returnint(x)+int(y)
  在实现测试代码文件中,通过@step()装饰器引用行为描述文件中的步骤,并将其中用到的数据通过<变量>替换,将变量用到测试步骤中。
  严格来说,Calculator()类的实现应该单独文件中实现,这里只是为了省事儿。
  在项目根目录下运行gaugerunspecs命令。
   
  查看测试报告。
   
  如果我想增加测试用例呢?很简单,只需要增加行为描述即可。
……
##Testadditionbignumber
*CreateaClassCalculator.
*UsingAddmethod,digital"301"plus"578"resultis"879".
  那么问题来了,gauge到底可以用来做什么类型的测试,这里有一些例子供你参考:https://getgauge-examples.github.io/

相关阅读:初识gauge自动化测试框架

   
上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号