Java 如果一个测试用例失败,如何自动转到下一个用例并在SeleniumWebDriver中执行?

Java 如果一个测试用例失败,如何自动转到下一个用例并在SeleniumWebDriver中执行?,java,selenium-webdriver,frameworks,Java,Selenium Webdriver,Frameworks,我已经在SeleniumWebDriver(不是TestNG)中创建了3个独立的测试用例——独立的java文件。我想一个接一个地执行所有三个测试用例。如果一个测试用例失败,我想继续执行下一个测试用例。我的选择是什么?有什么建议吗?(我是硒新手)。我为你做了一个我想称之为“骨架”的东西。我不知道你的具体情况是什么,因为你没有解释,所以你必须填写这些行。几乎所有您需要做的就是创建一个布尔变量(我称之为我的有效),并使用if语句来保持测试的运行。如果不满足您的任何条件,它将打印“您未通过测试”。如果满

我已经在SeleniumWebDriver(不是TestNG)中创建了3个独立的测试用例——独立的java文件。我想一个接一个地执行所有三个测试用例。如果一个测试用例失败,我想继续执行下一个测试用例。我的选择是什么?有什么建议吗?(我是硒新手)。

我为你做了一个我想称之为“骨架”的东西。我不知道你的具体情况是什么,因为你没有解释,所以你必须填写这些行。几乎所有您需要做的就是创建一个
布尔
变量(我称之为我的
有效
),并使用
if
语句来保持测试的运行。如果不满足您的任何条件,它将打印“您未通过测试”。如果满足其中一个条件,它将显示“您通过了测试”。这是用Java编写的:

public class Test {  
    static boolean ConditionIsMet = false;
    static boolean valid = false;

    public static void main(String[] args) throws Exception {
        if (!valid) {
            TestOne();
            TestTwo();
            TestThree();
            System.out.println("You failed the test");
        } else {
            System.out.println("You passed the test");
        }
    }
    private static void TestOne() {
        //Go through a test
        if(ConditionIsMet) {
            valid = true;
        }
    }   

    private static void TestTwo() {
        //Go through a different test
        if(ConditionIsMet) {
            valid = true;
        }
    }

    private static void TestThree() {
        //Go through another different test
        if(ConditionIsMet) {
            valid = true;
        }
    }
}

在做了一些研究之后,我实际上找到了一个解决方案。我有一个数据驱动的excel框架(ApachePOI),每一行都是一个测试用例的测试数据。我的代码看起来像这样,现在运行良好。如果某个测试中存在异常,它将捕获该异常并自动跳到下一个测试。如果出现诸如nosuchobjectelement之类的异常,那么它将捕获该异常并将该异常发送到日志文件&测试用例失败。因为for循环仍然处于活动状态,所以它将转到下一个测试并再次开始执行它

对于(测试1至n) { 尝试 { //执行测试的步骤 } 捕获(例外e) { 日志输出(如描述); }


}

你试过了吗?你研究过了吗?向我们展示你的研究和努力。也可以看到并接受“是”。尝试将三个测试用例作为一个文件执行。如果一个测试用例由于异常而失败,它将停止执行。现在我已经将测试用例分为3个文件,并手动逐个执行。我想知道是否有一种方法可以创建一个驱动程序脚本来逐个执行这些文件,即使其中一个由于异常而失败。如果您尝试过,请向我们展示一些代码。非常感谢。我在下面补充了我的答案。它现在正在工作。谢谢