Cucumber入门知识学习优质PPT.ppt
- 文档编号:14304125
- 上传时间:2022-10-21
- 格式:PPT
- 页数:26
- 大小:1.12MB
Cucumber入门知识学习优质PPT.ppt
《Cucumber入门知识学习优质PPT.ppt》由会员分享,可在线阅读,更多相关《Cucumber入门知识学习优质PPT.ppt(26页珍藏版)》请在冰豆网上搜索。
Maven本地安装Maven的下载页面:
http:
/maven.apache.org/download.html可下载:
apache-maven-3.2.3-bin.zip环境变量配置:
在系统变量中新建一个变量,变量名为M2_HOME,变量值为Maven的安装目录D:
binapache-maven-3.0。
点击确定,接着在系统变量中找到一个名为Path的变量,在变量值的末尾加上%M2_HOME%bin;
参考:
Maven学习链接,Cucumber所需工具,Eclipse中安装Maven插件:
eclipse的菜单栏选择Help-InstallNewSoftware点击Workwith后面的add,输入Name,弹出Location输入安装地址:
/download.eclipse.org/technology/m2e/release下一步会自动完成安装安装好后重启eclipse,可创建Maven工程本地会生成.m2的文件夹(本地仓库路径),默认情况下,该文件夹下放置了Maven本地仓库.m2/repository。
一般windows用户该路径会安装在C盘Maven工程中存在一个pox.xml配置文件,在这xml文件中添加Maven所依赖的Jar的名称,或添加节点,会自动下载或关联我们需要的包,下面会有应用介绍,环境搭建,安装Cucumber-JVM(通过Maven工程)在Eclipse里面创建MavenProject工程,Maven假设项目主代码位于src/main/java目录,Maven项目中默认的测试代码目录是src/test/java,且存在pox.xml文件打开pox.xml文件,添加节点(下页)自动下载或关联本地仓库存储中pox.xml节点中配置的相关文件jar包手动下载安装Cucumber-JVM1.下载地址中包含即将提到的一些jar可在此处下载:
https:
/oss.sonatype.org/content/repositories/releases/info/cukes/2.把jar包导入到Eclipse中即可,环境搭建,info.cukescucumber-picocontainer1.1.5testinfo.cukescucumber-junit1.1.5testjunitjunit4.11test,环境搭建,除Cucumber-JVM外,需要的jar文件:
1.cucumber-core:
包含主要的语法分析以及执行相关的逻辑(命令界面执行)2.cucumber-java:
特定语言程序设计模块3.cucumber-picocontainer:
项目根据依赖注入模块更好的去组织代码4.cucumber-junit:
在支持Junit的工具上运行Cucumber5.gherkin:
基于编译器的Cucumber快速语法词法分析器模块6.cucumber-jvm-deps:
避免冲突发生当Cucumber-JVM中有依赖的包用到其它工程中,环境搭建,Cucumber-eclipse插件可以运行Cucumber-JVM,且可以对feature文件进行编辑在Eclipse中安装cucumber-eclipse插件打开Eclipse,点击Help-InstallNewSoftware输入cucumber在Workwith输入框双击:
Cucumber-http:
/suggestion勾选CucumberEclipsePlugin勾选Contactallupdatesitesduringinstall.点击Next,进行下载安装需要一段过程,安装后重启即可自此环境基本搭建完成,基本功能介绍与使用,创建Feature文件即.feature后缀的文件,Feature特定的关键字如下:
其它关键词还有Background和ScenarioOutline.等中文时需要在文件前加:
#language:
zh-CN,基本功能介绍与使用,Feature:
每个Feature必须以Feature开始,后跟冒号加描述,Cucumber不关心描述内容,这里具体以简单明了为主Scenario:
一个Feature文件里面可以有很多个Scenario,一个Scenario就是一个具体的你想要测试的功能点,一个Scenario又是由很多个步骤(Steps)组成的。
Scenario明确的描述我们期望的程序的行为,且方便不同职位的人员进行沟通,因为你只要看到一个Scenario,很容易就知道它想做什么。
Scenario关键字后面紧跟一个冒号和一个对应该场景的描述。
Steps:
每个Scenario都可以使用任意数量的步骤来描述任何发生在该场景里的事情,一个步骤通常是一行单独的文本并且由以下这些关键字开头:
Given,When,Then,And和But.如下:
(注意:
步骤后面不需要跟冒号),基本功能介绍与使用,Steps中的Given,When,Then,And和But介绍Given:
表示scenario中我们接受/认为是真的东西,它将为后面的when(事件/操作)和Then(输出)提供背景/上下文When:
表示scenario中的事件或动作;
如:
Ipressthecoffeebutton。
一般我们喜欢在一个scenario中只有一个事件或动作,因为这样容易理解scenario的目的,且当失败的时候容易找到错误;
Then:
表示预期的输出;
And&
But:
我们可以使用And和But作为Given/When/Then的同义词,如:
”Givenx,Andy,”这里的And就是Given的意思;
再如:
”Thenx,Butnoty,”这里的But就是Then的意思;
基本功能介绍与使用,Feature文件英文示例如下:
Feature:
ServecoffeeCoffeeshouldnotbeserveduntilpaidforCoffeeshouldnotbeserveduntilthebuttonhasbeenpressedIfthereisnocoffeeleftthenmoneyshouldberefundedScenario:
BuylastcoffeeGiventhereare1coffeesleftinthemachineAndIhavedeposited1$WhenIpressthecoffeebuttonThenIshouldbeservedacoffee,基本功能介绍与使用,中文Feature示例展示如下:
zh-CN功能:
我的中文测试场景:
DataTable,DocString等功能测试演示(无逻辑仅演示)假如用户的姓名,性别|赵大宝|男|刘胡兰|女|当招聘职位的标题招聘技工人员职位描述招聘技工人员,包吃包住速来高薪就职五险一金包你满意,中国文学社区国企待遇你懂得而且最晚入职时间是2014-10-30那么兼职职位的工作时间星期一,星期二,星期三,基本功能介绍与使用,Cucumber项目在Eclipse运行方式分为两种1.定位到所要运行的Feature文件,右键鼠标选择:
RunAS-CucumberFeature,即可在控制台看到运行信息,如没有对应的StepDefinitions,会出现下面错误:
publicvoid方法名称throwsThrowable/WritecodeherethatturnsthephraseaboveintoconcreteactionsthrownewPendingException();
此时需要补充相应的StepDefinitions,下面章节会介绍。
该方法一次只能执行一个Feature,一般适合代码调试用途,基本功能介绍与使用,2.Cucumber-junit运行Feature需要进行相关配置,相应目录下新增Class文件(内容如下),右键RunAs-JuintTest可以运行相同包下面的所有Feature文件importcucumber.api.CucumberOptions;
importcucumber.api.junit.Cucumber;
importorg.junit.runner.RunWith;
RunWith(Cucumber.class)CucumberOptions(format=format=junit:
target/junit.xml)publicclassRunCukesTest,基本功能介绍与使用,3.Cucumber-junit运行feature以及运行报告生成Cucumber-junit运行可以指定某个feature文件,代码如下:
CucumberOptions(features=classpath:
ganji/login/GJ_Login.feature)此代码执行GJ_Login.feature文件,如果想执行某一个特定目录下的多个feature文件,只需指定路径即可如:
classpath:
ganji/为Featuer指定StepDefinitions路径,代码如下:
CucumberOptions(glue=ganji/login,ganji/test)此代码自动去匹配ganji/login,ganji/test目录下的Steps文件,基本功能介绍与使用,测试报告打印配置代码如下:
CucumberOptions(format=junit:
reports/junit/junit.xml,html:
reports/html)运行代码后,此处会在reports目录下面生成reports/html/*report/junit/*生成html格式和xml格式相关报告根据标记执行指定(tags),方便用在冒烟测试,代码如下CucumberOptions(tags=somke)此代码只执行在前方加入somke标签的Feature,基本功能介绍与使用,StepDefinitions:
就是通过正则表达式,将feature里的文本步骤转义为可执行的代码。
1.普通步骤定义2.DataTables:
有些大量数据不适合在Given,When,Thenstep一行中进行匹配,我们可以放置到step下的一个表格中,基本功能介绍
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Cucumber 入门 知识 学习