Testing 如何使用testNG+Java在appium中运行多个测试用例?

Testing 如何使用testNG+Java在appium中运行多个测试用例?,testing,automation,testng,android-testing,appium,Testing,Automation,Testng,Android Testing,Appium,我是selenium测试自动化开发人员,最近开始使用appium为移动自动化开发测试用例。我想从testng.xml连续运行两个测试用例,但第一个测试用例运行正常,但第二个测试用例无法以appium错误开始 调试:响应客户端时出现错误:{状态:33,值:{消息:无法创建新会话。原始错误:请求了新会话,但有一个正在进行,或值:请求了新会话,但有一个正在进行},会话ID:44863100-a0f5-43b9-8c34-cda5636916a5} 我认为对于第二个测试用例,没有创建新的会话。因此,可以

我是selenium测试自动化开发人员,最近开始使用appium为移动自动化开发测试用例。我想从testng.xml连续运行两个测试用例,但第一个测试用例运行正常,但第二个测试用例无法以appium错误开始

调试:响应客户端时出现错误:{状态:33,值:{消息:无法创建新会话。原始错误:请求了新会话,但有一个正在进行,或值:请求了新会话,但有一个正在进行},会话ID:44863100-a0f5-43b9-8c34-cda5636916a5}

我认为对于第二个测试用例,没有创建新的会话。因此,可以在java中终止现有会话并启动新会话


提前谢谢

如果您提供xml,我将更容易为您提供答案


但是,我建议您在测试结束时使用driver.quit;这样您就不会遇到这样的错误。

在触发appium服务器时使用会话覆盖标志,例如:

cd appium; node . --safari --platform-version "platformVersion" -U "deviceID" --session-override
但是,现有服务器的原因可能是您以前的服务器尚未关闭

如果您使用的是Mac+java,则可以使用以下代码关闭appium服务器:

    public void stopServer() {
    String[] command = { "/usr/bin/killall", "-KILL", "node" };
    try {
        Runtime.getRuntime().exec(command);
        System.out.println("Appium server stopped.");
    } catch (IOException e) {
        e.printStackTrace();
    }
}

已使用driver.quit,但仍收到相同的错误。有什么方法可以通过java停止上一个会话并启动新的会话吗?那么让我举一个例子,您可以创建新的AppiumDrivernew URL;然后当你开车的时候,退出;您必须打开一个新连接。您是否在任何时间内使用了driver.quitannotation@AfterClass还是“事后检验”?