繁体   English   中英

从python启动Selenium(subprocess.Popen与os.system)

[英]Launching selenium from python (subprocess.Popen vs. os.system)

当我引导测试时,我正在使用subprocess.Popen在python中启动selenium 2 jar文件。

FF可以正常工作,但是当我尝试启动google chrome时,它无法加载页面(出现“ Aww,snap”错误),它尝试在一个奇怪的地方查找它的配置文件: $SELENIUM_JAR/"/var/folders/Qg/QgltsVp+FL0PDThAc5yUeE+++TM/-Tmp-/customProfileDir2e33faaabf3d4fb18491510228814229"/Default/Bookmarks

作为测试,我尝试手动启动selenium,但效果很好,接下来我尝试使用os.system ,但令我惊讶的是效果还不错。

尽管使用os.system有很多缺点,例如不能杀死硒,也不能捕获输出。

我的打开命令如下所示:

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_executejava -jar selenium-server.jar -userExtensions user-extensions.js -port 4444

我可以补充一点,我已经尝试将shell=False弄乱了,删除了stdio并通过`/ bin / bash -c'启动了,没有不同的结果

关于我所缺少的任何想法吗?

尝试将to_execute设置为列表而不是字符串,例如:

to_execute = [
    'java', 
    '-jar', 'selenium-server.jar',
    '-userExtensions', 'user-extensions.js',
    '-port', '4444']

我将简单地接受这个问题与python不相关,而与我的框架有关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM