Selenium:PythonWebDriver和Firefox配置文件
我运行了一个Python测试,但是我得到了这个错误Selenium:PythonWebDriver和Firefox配置文件,python,selenium,webdriver,Python,Selenium,Webdriver,我运行了一个Python测试,但是我得到了这个错误 C:\selenium>E[Error 32] unable to access this file. This file is used by another process: 'c:\\docume~1\\ammini~1\\impost~1\\temp\\tmpfhvfvf\\cert8.db' ====================================================================
C:\selenium>E[Error 32] unable to access this file. This file is used by another process: 'c:\\docume~1\\ammini~1\\impost~1\\temp\\tmpfhvfvf\\cert8.db'
======================================================================
ERROR: test_w (__main__.W)
----------------------------------------------------------------------
Traceback (most recent call last):
File "C:\selenium\w.py", line 15, in test_w
driver.get("/")
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", l
ine 165, in get
self.execute(Command.GET, {'url': url})
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", l
ine 153, in execute
self.error_handler.check_response(response)
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py"
, line 116, in check_response
zeroeth = value['stackTrace'][0]
IndexError: list index out of range
----------------------------------------------------------------------
Ran 1 test in 6.969s
FAILED (errors=1)
这里是从Selenium IDE生成的完整代码
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.common.exceptions import NoSuchElementException
import unittest, time, re
class W(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Firefox()
self.driver.implicitly_wait(1)
self.base_url = "http://www.google.it/"
self.verificationErrors = []
def test_w(self):
driver = self.driver
driver.get("/")
driver.find_element_by_id("lst-ib").click()
driver.find_element_by_id("lst-ib").clear()
driver.find_element_by_id("lst-ib").send_keys("pippo")
driver.find_element_by_id("lst-ib").clear()
driver.find_element_by_id("lst-ib").send_keys("outlet")
driver.find_element_by_link_text("store").click()
def is_element_present(self, how, what):
try: self.driver.find_element(by=how, value=what)
except NoSuchElementException, e: return False
return True
def tearDown(self):
self.driver.quit()
self.assertEqual([], self.verificationErrors)
if __name__ == "__main__":
unittest.main()
如果我创建了另一个Firefox配置文件,我如何使用它?
我需要另一个Firefox配置文件吗?我创建了另一个概要文件,并将其放在Python测试w.py(C:\selenium)的同一目录中,但它不起作用
非常感谢
致以最良好的祝愿
G:你能发布一段导致这种情况的代码吗?webdriver.Firefox()应创建新的FF配置文件。Firefox版本可能存在问题。由于FF和Chrome的快速发布计划,Selenium和其他自动化工具很难跟上进度。Mikko,Selenium项目通常在新FF发布的一天内发布更新版本。通常是在之前。每次运行此脚本时,我都会收到一个不同的目录以显示错误消息…第一次此文件被另一个进程使用时:“c:\\docume~1\\ammini~1\\import~1\\temp\\tmpfhvvf\\cert8.db”……第二次此文件被另一个进程使用时:“c:\\docume~1\\ammini~1\\import~1\\temp\\tmpvcgo5\\cert8.db”。。。。等等Temp dir发生变化