当前位置: 首页 > 知识库问答 >
问题:

在BrowserStack上运行时,重置驱动程序会话退出自动化测试

公西宏峻
2023-03-14

在跨平台运行我的自动化测试时,存在登录冲突,我通过创建一个方法来解决此冲突,该方法在两个平台之间切换之前重置浏览器会话:

public RemoteWebDriver resetDriverSession() {
    if (this.driver != null) {
        this.driver.quit();
    }
    return getInstance();
}

这在本地有效,但在BrowserStack上运行时,此方法退出会话。我还创建了一个使用Chrome UI(版本86.0.4240.111)来清除历史记录的方法

        case CLEAR_CACHE:{
            RemoteWebDriver driver = driverFactory.getInstance();
            driver.manage().deleteAllCookies();
            driver.get("chrome://settings/clearBrowserData");
            driver.switchTo().activeElement();
            driver.findElement(By.cssSelector("* /deep/ #clearBrowsingDataConfirm")).click();
            //driver.findElement(By.xpath("//*[@id=\"clearBrowsingDataConfirm\"]")).sendKeys(Keys.ENTER);
            //driver.findElement(By.xpath("//settings-ui")).sendKeys(Keys.ENTER);
            break;
        }
    }

共有1个答案

西门威
2023-03-14

我认为只要driver.quit();将被处决。您可能希望尝试其他方法/替代方法来实现相同的用例。

 类似资料:
  • 我尝试将Jenkins作业设置为使用BrowserStack运行测试。在本地,测试运行良好,驱动程序初始化,会话创建,测试开始运行,使用“。在Jenkins安装了一个插件。但下面的错误存在。 如果我在本地设置则存在以下错误 在本地设置后,错误将指向以下行 我希望通过Jenkins与BrowserStack的连接应该在本地完成。 提前道谢。

  • 为Electron应用编写自动测试, 你需要一种 "驱动" 应用程序的方法。 Spectron 是一种常用的解决方案, 它允许您通过 WebDriver 模拟用户行为。 当然,也可以使用node的内建IPC STDIO来编写自己的自定义驱动。 自定义驱动的优势在于,它往往比Spectron需要更少的开销,并允许你向测试套件公开自定义方法。 我们将用 Node.js 的 child_process

  • 为Electron应用编写自动测试, 你需要一种 "驱动" 应用程序的方法。 Spectron is a commonly-used solution which lets you emulate user actions via WebDriver. 当然,也可以使用node的内建IPC STDIO来编写自己的自定义驱动。 自定义驱动的优势在于,它往往比Spectron需要更少的开销,并允许你向

  • 我在一个扩展GebreportingSpec的类中尝试了这一点: 当然,我在setup()方法中创建了一个新的RemoteWebDriver。 使用这种方法,每个测试都得到一个独特的Sauce Connect会话,结果都以Sauce的形式组织得很好。但是,由于以下原因,所有测试都失败了:

  • 在此处输入图像描述 所以每当我运行我的conf.js文件时,WebDriver实例就会启动,但它会超时:(。(见附件图片) 结果是无法接触到铬。 我的环境是这样设置的: > 铬驱动器2.26 selenium-server-standalone-2.53.1 硒-webdriver@3.0.1 安装了CHROME浏览器55 量角器5.0.0 这是我的conf.js文件 }

  • 我有一份spark流媒体工作,我正试图由spark-k8运营商提交。我始终保持重启策略。但是,手动删除驱动程序时,驱动程序不会重新启动。我的yaml: Spark版本:2.4.5 apiVersion:“sparkoperator.k8s.io/v1beta2” 我遵循的步骤: 通过kubectl apply-f示例/spark测试创建资源。亚马尔。Pod创建成功。手动删除驱动程序。 预期行为:将