有人可以帮我解决如何在python中使用selenium打开多个firefox实例。
我编写了以下代码并且确实打开了多个实例,但是我希望保留对浏览器的所有引用,以便我可以访问每个浏览器来执行特定任务,并且应该能够在测试完成后退出所有浏览器
class LoadTestCase(unittest.TestCase):
def setUp(self):
i = 0
while (i < 2):
self.driver = webdriver.Firefox()
self.driver.implicitly_wait(30)
self.base_url = "http://example.com/"
self.verificationErrors = []
self.accept_next_alert = True
driver = self.driver
url = "http://example.com/"
driver.get(self.base_url + "/")
i = i + 1
答案 0 :(得分:0)
一方面:
for i in range(2):
...
比以下更简洁,更不容易出错:
i = 0
while i < 2:
...
i = i + 1 # or just 'i += 1'
但是你的主要问题是每次循环你替换之前的webdriver
,失去对它的访问权限:
self.driver = webdriver.Firefox()
相反,请考虑一个列表:
self.drivers = []
for i in range(2):
self.drivers.append(webdriver.Firefox())
...
现在您可以保留对所有这些内容的访问权限。