Headless 是否有一个代码相当于;在项目中存在的每个测试用例/测试套件之后终止驱动程序>;设置>;执行?

Headless 是否有一个代码相当于;在项目中存在的每个测试用例/测试套件之后终止驱动程序>;设置>;执行?,headless,katalon-studio,Headless,Katalon Studio,我需要使用headless和nonheadless运行我的测试。对于非headless,我希望在浏览器中看到实际结果,因此我选择在每个测试用例之后关闭Terminate驱动程序,并在每个测试套件之后关闭Terminate驱动程序。当运行headless时,我需要再次检查这些,以便在执行后在后台删除chromedriver.exe 我需要创建具有强制“在每个测试用例之后终止驱动程序”代码的测试用例,而不是在项目设置中切换复选框。使用DriverFactory类检查当前测试是否在无头驱动程序中执行,

我需要使用headless和nonheadless运行我的测试。对于非headless,我希望在浏览器中看到实际结果,因此我选择在每个测试用例之后关闭Terminate驱动程序,并在每个测试套件之后关闭Terminate驱动程序。当运行headless时,我需要再次检查这些,以便在执行后在后台删除chromedriver.exe


我需要创建具有强制“在每个测试用例之后终止驱动程序”代码的测试用例,而不是在项目设置中切换复选框。

使用
DriverFactory
类检查当前测试是否在无头驱动程序中执行,然后将其放入测试侦听器中,您可以在测试用例或测试套件之后执行:

class TestListener {

    @AfterTestCase
    def afterTestcase(TestCaseContext testCaseContext) {
        if (DriverFactory.getExecutedBrowser().getName()!='HEADLESS_DRIVER'){
            WebUI.closeBrowser()
        }
    }
    @AfterTestSuite
    def afterTestSuite(TestCaseContext testCaseContext){
        if (DriverFactory.getExecutedBrowser().getName()=='CHROME_DRIVER'){
            WebUI.closeBrowser()
        }       
    }
} 
有时,不同的驾驶人在不同的考试中被绞死。如果您希望终止一直挂起的进程,请使用

String cmd = "taskkill /F chromedriver.exe"
Runtime.getRuntime().exec(cmd)

使用
DriverFactory
类检查当前测试是否在无头驱动程序中执行,然后将其放在测试用例或测试套件之后可以执行的测试侦听器中:

class TestListener {

    @AfterTestCase
    def afterTestcase(TestCaseContext testCaseContext) {
        if (DriverFactory.getExecutedBrowser().getName()!='HEADLESS_DRIVER'){
            WebUI.closeBrowser()
        }
    }
    @AfterTestSuite
    def afterTestSuite(TestCaseContext testCaseContext){
        if (DriverFactory.getExecutedBrowser().getName()=='CHROME_DRIVER'){
            WebUI.closeBrowser()
        }       
    }
} 
有时,不同的驾驶人在不同的考试中被绞死。如果您希望终止一直挂起的进程,请使用

String cmd = "taskkill /F chromedriver.exe"
Runtime.getRuntime().exec(cmd)