cucumber使用(cucumber入门)
cucumber使用(cucumber入门),新营销网红网本栏目通过数据整理汇集了cucumber使用(cucumber入门)相关信息,下面一起看看。
欢迎来到黄瓜。CUCUCUCUBER是目前最流行的行为驱动开发框架之一,拥有粉丝量很大的黄瓜。在这一系列培训中,我们将了解更多关于黄瓜及其软件开发模型的知识。
Cucumber是一个支持行为驱动开发(BDD)的测试框架。它允许我们用自然语言描述测试场景,比如关键字if、when、then等。黄瓜支持多种开发语言,如Java、JavaScript、Python、Go、PHP、C#、VB.NET等。
Cubberjvm启航
1 CUCUCUBER 2.1 Cucumber简介cucumber是一个行为驱动的开发工具(BDD)。Cucumber读取用纯文本编写的可执行规范,并验证软件是否按照这些规范的要求执行。这些规范由几个例子或场景组成。比如3360
234种情况用户输入的密码不正确。登录系统假设用户输入了正确的用户名,但密码是错误的。当用户点击登录按钮时,系统提示用户名或密码错误。每个场景都是CUCucumber需要执行的测试步骤列表。Cucumber验证要测试的软件是否满足场景步骤,并为每个测试场景步骤生成测试报告,以显示验证是通过还是失败。
2.2小黄瓜(GherkinGherkin)是一套语言,通过这套语法黄瓜可以理解(分析)明文的语法结构。CUCucumber执行的场景用例是用小黄瓜语法写的。小黄瓜的功能包括
明确的可执行规范
黄瓜自动化测试
记录系统的实际行为。
黄瓜可以使用不同的自然语言来描述场景,用户团队可以选择自己熟悉的语言来使用黄瓜。小黄瓜文档以文本文件格式保存。特性,通常可以上传到Git或SVN等版本控制服务器进行版本管理。
2.3步骤定义步骤是小黄瓜和自动化测试代码之间的连接器。步骤定义指定了应该执行的步骤,在这些步骤中可以实现被测试对象(UT,API,UI)的测试执行代码。
2 CUCUCUMBER及相关工具的安装这里只介绍CUCUCUMBER-JVM的安装。JVM是CUCUCUMBER的Java版本,支持Java中常用的工程管理工具Maven和Grandle。JDK推荐JDK 1.8。
2.1安装JDKOracle JDK下载地址3360
1https://www.oracle.com/java/technologies/downloads/#java8 open JDK下载地址3360
建议在1https://www.openlogic.com/openjdk-downloads2.2.使用3.6.0或以上版本安装MavenMaven
Maven下载地址3360
安装1https://maven.apache.org/download.cgi2.3 ide2 . 3 . 1 IntelliJ IDEA
IntelliIdea推荐使用Cucumber插件,它有以下功能
并且突出显示语法错误;自动完成;定义快速修复步骤;定义步骤并在步骤之间快速切换;特征文件的国际语言支持;
J IntelliIdea下载地址
1https://www.jetbrains.com/zh-cn/idea/promo/2.3.2日食
Cucumber Eclipse插件具有以下特性
支持CUCUCUCUMBER瓜-JAVA 8 Lambda语法、特征文件内容、辅助步骤、定义向导、特征步骤、自动生成国际化关键字、突出产品特征、格式化、显示产品特征、运行
Eclipse下载地址
在1https://www.eclipse.org/downloads/packages/3 3.1中创建一个CUCUCUMBER项目引入依赖项创建一个Maven项目,将CUCUCUMBER需要的依赖项包引入pom.xml文件中。pom.xml
12345678910111213141516171819202122232425262728293031323343536373839404142434445464748484950515253545556575859606162 project xmlns=http://maven
-JavaStarter /name properties project.build.sourceEncoding UTF-8 /project.build.sourceEncoding java.version 1.8 /java.version junit.version 4.13.2 /junit.version cucumber.version 6.10.4 /cucumber.version maven.compiler.version 3.8.1 /maven.compiler.version maven.surefire.version 2.22.2 /maven.surefire.version /properties dependencies dependency groupId io.cucumber /groupId artifactId cucumber-java /artifactId version ${cucumber.version} /version scope test /scope /dependency dependency groupId io.cucumber /groupId artifactId cucumber-junit /artifactId version ${cucumber.version} /version scope test /scope /dependency dependency groupId junit /groupId artifactId junit /artifactId version ${junit.version} /version scope test /scope /dependency /dependencies build plugins plugin groupId org.apache.maven.plugins /groupId artifactId maven-compiler-plugin /artifactId version ${maven.compiler.version} /version configuration encoding UTF-8 /encoding source ${java.version} /source target ${java.version} /target /configuration /plugin plugin groupId org.apache.maven.plugins /groupId artifactId maven-surefire-plugin /artifactId version ${maven.surefire.version} /version /plugin /plugins /build /project 3.2 创建工程目录结构
cucumber-jvm Maven工程目录下一般包括一下目录
src/main/java //Java代码
src/main/resources //配置文件资源
src/test/java //测试Java代码
src/test/resources // features 文件和其它配置文件
src/pom.xml //Maven工程文件,管理依赖包和构建配置
3.3 一个简单测试场景
在src/test/resources目录下创建一个login.feature文件,文件内容如下
12345678910111213#language:zh-CN功能:用户登录场景大纲:账号密码登录假如用户进入登录页面当用户需要输入用户名 UserName 和密码 Password 然后点击登录按钮那么用户登录平台并显示当前姓名 NickName @positive例子:有效用户名和密码
UserName
Password
NickName
devops
123456
bdd
在src/test/java目录下创建一个cucumber启动类 RunCucumberTest,启动类配置如下
12345@RunWith(Cucumber.class)@CucumberOptions(plugin={ pretty , html:target/cucumber-report.html })publicclassRunCucumberTest{}
在src/test/java目录下创建一个步骤定义类 LoginStepdefs
123456789101112131415161718192021222324packageorg.bddall.cucumber;importio.cucumber.java.zh_cn.假如;importio.cucumber.java.zh_cn.当;importio.cucumber.java.zh_cn.那么;publicclassLoginStepdefs{@假如( 用户进入登录页面 )publicvoid用户进入登录页面(){//Writecodeherethatturnsthephraseaboveintoconcreteactionsthrownewio.cucumber.java.PendingException();}@当( 用户需要输入用户名devopstools和密码123456然后点击登录按钮 )publicvoid用户需要输入用户名devopstools和密码123456然后点击登录按钮(){//Writecodeherethatturnsthephraseaboveintoconcreteactionsthrownewio.cucumber.java.PendingException();}@那么( 用户登录平台并显示当前姓名bdd )publicvoid用户登录平台并显示当前姓名bdd(){//Writecodeherethatturnsthephraseaboveintoconcreteactionsthrownewio.cucumber.java.PendingException();}}
我们将在后续的文章中介绍如何在步骤定义中加入测试业务代码,例如API测试或Selenium的Web应用测试。
3.4 测试结果报告
运行一下命令
1mvntest
浏览器打开html测试报告,Cucumber测试报告放在target/cucumber-report.html
Demo运行效果
相关文章
十大巅峰网游小说(十大公认网游小说神作推荐)
百度网盘登陆入口(百度网盘共享群的正确使用方法)
恶人传评价(《恶人传》以暴制暴成了救赎)
百度网盘登录入口(百度网盘安装方法)
番禺中学排名(番禺区热门学校盘点)
马路标志(交通安全标示大全及图解)
苹果序列号是哪个(iPhone序列号知识扫盲)
故宫太和殿介绍(故宫的太和殿为什么叫金銮殿)
东营人均gdp(中国人均GDP前15强城市)
陆贞原型(陆贞传奇的原型各个奇葩)
硫酸铜什么颜色(硫酸铜的用途与危害)
小米平板4参数(小米平板4参数全曝光)
更多cucumber使用(cucumber入门)相关信息请关注本文章,本文仅仅做为展示!