【问题标题】:how to establish a session thourghout the selenium webdriver suite by using python in firefox如何在 Firefox 中使用 python 在整个 selenium webdriver 套件中建立会话
【发布时间】:2014-07-22 14:47:45
【问题描述】:

我想在套件开始时建立一个会话。对于多个测试用例,该会话应停留更长时间。该会话应在最后结束。 该会话应该在 Selenium Web 驱动程序中使用 Unittest 框架在 python 语言中实现。 请任何人提出任何方法或如何实现它。

【问题讨论】:

  • 你能展示你的代码吗?

标签: python session selenium webdriver python-unittest


【解决方案1】:

实现这一点的最简单方法是不使用 Setup() 和 TearDown() 方法,或者更具体地说,不在该开始或每个测试用例创建 WebDriver 对象的新实例,也不使用 Quit () 方法在每个测试用例的末尾。

在您的第一个测试用例中,创建一个 WebDriver 对象的新实例,并将该对象用于您的所有测试用例。在最后一个测试用例结束时,使用 Quit() 方法关闭浏览器。

【讨论】:

    【解决方案2】:

    您应该阅读unittest 文档here

    我假设你有 discovered your suite(s) 并且正在循环遍历每个并运行每个测试的所有测试。

    所以你在这一点上:

    loader = unittest.TestLoader()
    suite = loader.loadTestsFromModule('/path/to/tests')
    for test in suite:
        test.run()
    

    在您使用test.run() 开始运行测试之前,请开始您的 webdriver 会话。运行套件中的所有测试后,退出 webdriver 会话。

    loader = unittest.TestLoader()
    suite = loader.loadTestsFromModule('/path/to/tests')
    driver = webdriver.Remote('http://0.0.0.0:4723/wd/hub', desired_capabilities)
    for test in suite:
        test.run()
    driver.quit()
    

    【讨论】:

      猜你喜欢
      • 2017-12-31
      • 2013-10-16
      • 1970-01-01
      • 1970-01-01
      • 2014-11-29
      • 2018-10-25
      • 2012-01-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多