在引导测试时,我在python中使用subprocess.Popen启动selenium 2JAR文件。
这在FF上运行得很好,但是当我尝试启动google chrome时,它无法加载页面(得到一个“哇,快照”的-error),它试图在一个奇怪的地方查找它的个人资料:$SELENIUM_JAR/"/var/folders/Qg/QgltsVp+FL0PDThAc5yUeE+++TM/-Tmp-/customProfileDir2e33faaabf3d4fb18491510228814229"/Default/Bookmarks
作为一个测试,我尝试手动启动selenium,它运行得很好,接下来我尝试使用os.system,令我惊讶的是,它运行得很好。
但是,使用os.system有很多缺点,比如不能杀死selenium,也不能捕获输出。
我的open命令如下所示:
self.p = subprocess.Popen(to_execute, env=os.environ, shell=True, cwd=self.path_to_selenium, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)其中to_execute为java -jar selenium-server.jar -userExtensions user-extensions.js -port 4444
我可以补充说,我已经尝试了修改shell=False,删除stdio,并通过‘/bin/bash -c’启动,但没有任何不同的结果
你知道我错过了什么吗?
发布于 2011-06-01 08:13:28
我将简单地接受这个问题与python无关,而是与我的框架有关。
发布于 2011-04-09 04:44:06
尝试将to_execute设置为列表而不是字符串,如下所示:
to_execute = [
'java',
'-jar', 'selenium-server.jar',
'-userExtensions', 'user-extensions.js',
'-port', '4444']https://stackoverflow.com/questions/5600445
复制相似问题