Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我们在cucumber中是否有任何注释,它将在功能文件中的任何测试之前运行?_Cucumber_Cucumber Java_Qaf - Fatal编程技术网

我们在cucumber中是否有任何注释,它将在功能文件中的任何测试之前运行?

我们在cucumber中是否有任何注释,它将在功能文件中的任何测试之前运行?,cucumber,cucumber-java,qaf,Cucumber,Cucumber Java,Qaf,@方法将在每个场景之前运行。我们是否有在任何场景之前运行的注释,以及在执行所有场景之后运行的注释?如注释所述,Cumber没有现成的解决方案 但是您可以创建一个before钩子,只使用静态标志运行一次 private static boolean skipFlag = false; @Before public void beforeHook() { if(!skipFlag) { do stuff skipFlag=true; } } 修改

@方法将在每个场景之前运行。我们是否有在任何场景之前运行的注释,以及在执行所有场景之后运行的注释?

如注释所述,Cumber没有现成的解决方案

但是您可以创建一个before钩子,只使用静态标志运行一次

private static boolean skipFlag = false;

@Before
public void beforeHook() {

    if(!skipFlag) {
        do stuff
        skipFlag=true;
    }
}
修改
之前的
钩子以运行某些标记等

后弯钩在末端运行是困难的。或者专门创建一个场景,或者在最后创建一个完成所有后钩子工作的最后步骤。或者您可以在中编写代码,尽管它将在所有功能文件运行后运行。

您可以在可以使用不同TestNG侦听器和注释的地方使用。此外,如果您使用webdriver,还可以获得额外的支持。比如说

package my.test.pkg
public class MyClass{
    @BeforeSuite
    public void beforeSuite() {
       //get executed before suite
    }

    @BeforeTest
    public void beforeTest() {
       //get executed before each xml test

    }
    @BeforeMethod
    public void beforeMethod() {
       //get executed before each test case/scenario

    }
    @BeforeGroups(["p1","p2"])
    public void beforeMethod() {
       //get executed before group

    }
    //same for after methods @afterXXXXX

 }
您需要在配置文件中添加类:

<test name="Gherkin-QAF-Test">
   <classes>
      <class name="com.qmetry.qaf.automation.step.client.gherkin.GherkinScenarioFactory" />
      <class name="my.test.pkg.Myclass" />
   </classes>
</test>


此示例未使用侦听器。您还可以使用不同的侦听器

好吧,我们没有。