摩卡咖啡-重试整个测试

时间:2018-07-19 02:56:40

标签: javascript testing mocha appium webdriver-io

如果其中的任何测试套件失败,是否可以重试整个测试用例?

我尝试使用this.retries(),但是由于某种原因,只要我的测试失败,它就会在运行一次后停止。在特定的测试套件中使用它可以工作,但会给我带来误报(即使在错误的屏幕上也可以通过测试),而且如果我的测试在之前的钩子上失败,这将无法正常工作。我也尝试过使用retries选项,但是在运行失败后它也停止了运行。

我正在将AppiumMochaJSWebdriverIO结合使用来测试Android应用。

编辑:不使用TestNG或上面列出的框架以外的任何其他框架。

2 个答案:

答案 0 :(得分:2)

理想情况下,除非您在测试套件/测试用例中使用粗箭头功能,否则mocha中的this.retries选项在Webdriverio中应该可以正常工作。请尝试与Webdriverio gitter频道联系以获取最新问题或解决方法。他们非常有帮助。

答案 1 :(得分:0)

您可以使用Retry Analyzer,只需创建一个方法即可:

public class RetryAnalyzer implements IRetryAnalyzer {
    int counter = 1;
    int retryLimit = 3; //Change the limit, how many time you want to retry

    @Override
    public boolean retry(ITestResult result) {
        if(counter < retryLimit) {
            counter++;
            return true;
        }
        return false;
    }
}

@Test注释中使用上述方法,如下所示:

@Test(retryAnalyzer = RetryAnalyzer.class)
    public void testCaseName() throws Exception {
        //Your code
    }