我有一些SpecFlow功能(使用Gherkin语法),我想暂时禁用该功能以阻止其测试运行吗?
有可以用来标记功能的属性吗?我猜测与Cucumber一起使用的某些东西也可能与SpecFlow一起使用。
Answers:
您可以使用标签@ignore标记功能:
@ignore @web
Scenario: Title should be matched
When I perform a simple search on 'Domain'
Then the book list should exactly contain book 'Domain Driven Design'
@ignore
Feature: CheckSample
@ignored
Scenario Outline: check ABC #checkout.feature:2
Given I open the applciation
When I enter username as "<username>"
And I enter password as "<password>"
Then I enter title as "<title>"
Examples:
| username | password |
| dude | daad |
将以上内容视为功能文件“ CheckSample.feature”
下面是您的步骤文件,它只是部分文件:
public class Sampletest {
@Given("^I open the applciation$")
public void i_open_the_applciation() throws Throwable {
// Write code here that turns the phrase above into concrete actions
//throw new PendingException();
}
现在,下面是跑步者文件:
@RunWith(Cucumber.class)
@CucumberOptions(
plugin = {"pretty", "html:target/reports",
"json:target/reports/cucumber-report.json"},
monochrome = true,
tags = {"~@ignored"}
)
public class junittestOne {
public static void main(String[] args) {
JUnitCore junit = new JUnitCore();
Result result = junit.run(junittestOne.class);
}
}
这里要注意的重要一点是,功能文件中的“ @ignored”文本在CujunberOptions(标签)中与“ junittestone”类文件中一起提到。另外,请确保您的项目中具有黄瓜,小黄瓜,Junit和其他jar的所有相关jar文件,并且已将它们导入到步骤定义(类)中。
由于“忽略”,执行测试时将跳过该方案。