AutoIT 脚本在执行后再次运行而无需再次调用

AutoIT script runs again after execution without another call

我正在将 Selenium WebDriver 测试与 chrome 一起自动化,并且我调用了一个 AutoIT 脚本以绕过网站登录。

我用以下代码调用脚本:

        try {
                Reporter.log("Running AutoIT log-in script");
                Runtime.getRuntime().exec("C:\Users\aaa\Script\Auth.exe");
            } catch (IOException e) {

                e.printStackTrace();
                driver.close();
                Reporter.log("AutoIT script not found or can't be launched.");
            }        

The execution flow is:

1- Chrome 发射

2-脚本执行完毕(登录成功)

3- 测试 运行s

4- 脚本再次执行

5- Chrome 关闭

6- 结果;测试失败。

我尝试添加如下内容:

$g_szVersion = "Login v2.0"
If WinExists($g_szVersion) Then Exit
AutoItWinSetTitle($g_szVersion)

为了使它 运行 一次,但由于它在脚本完成后 运行 秒,因此没有必要跟踪这样的重复执行。

任何帮助将不胜感激,谢谢!

在你的测试 运行:

之后尝试添加另一种杀死 AutoIt 脚本的方法
Runtime.getRuntime().exec("C:\Users\aaa\Script\Auth.exe").destroy();