参考文章:
https://www.jianshu.com/p/3857f2c3a8d4
Feature: Is it friday yet?
this is a descriptions
Everybody want to know when it's Friday
Scenario: Sunday isn't Friday
Given today is Sunday
When I ask whether it's Friday yet
Then I should be told "Nope"
Scenario: Friday is Friday
Given today is Friday
When I ask whether it's Friday yet
Then I should be told "TGIF"
cucumber官网链接,里面也有关于BDD的信息。
cucumber本质上是使用根据正则表达式匹配自然语言,然后依次执行对应的方法,以达到测试的目的。
Cucumber是一个解释程序,就像ruby命令执行解释 .rb文件里的Ruby代码一样,Cucumber用来执行解释 .feature文件里的Gehrkin代码。
Gherkin
Gherkin是自然语言测试的简单语法。
一个完整的测试是由多个step组成的,step即最小单元,如何复用step是非常关键的问题。多个step组成一个Scenario,即一个完整的测试case。多个Scenario组成一个Feature,即一组相关的测试case。
关键字
- Feature
- Example(or Scenario)
- Given,When,Then,And,But(steps)
- Background
- Scenario Outline (or Scenario Template)
- Examples (or Scenarios)
一个简单的例子
测试报告
cucumber可以通过添加插件生成json或者html的报告。使用方法很简单,在@CucumberOptions的plugin里添加"html:target/cucumber"或者"json:target/cucumber.json",cucumber运行结果后会在对应的目录下生成html报告或者json文件。路径可自行修改
@RunWith(Cucumber.class)
@CucumberOptions(plugin = {"pretty","html:target/cucumber","json:target/cucumber.json"}, features = "classpath:cucumber/features")
public class CucumberTest {
}

本文介绍了Cucumber的基本概念,它是一个基于正则表达式匹配自然语言的测试工具,通过执行.Gherkin文件实现测试目的。Gherkin是一种简洁的自然语言测试语法,由Feature、Scenario、Given/When/Then等关键字构成。Cucumber测试报告可通过添加插件生成HTML或JSON格式。

3120

被折叠的 条评论
为什么被折叠?



