当我运行行为时,它似乎是从python2.7运行的,并且无法找到为python3.4安装的硒。我是否需要配置行为以便在某个地方运行python3.4-在行为网站或其他地方什么也看不到。有关于在Python 3.4中使用行为的文章,因此是可能的。
这是我看到的:
$ behave
...
File "/usr/local/lib/python2.7/dist-packages/behave/runner.py", line 304, in exec_file
exec(code, globals, locals)
File "features/steps/home_page.py", line 2, in <module>
from selenium import webdriver
ImportError: No module named selenium
Run Code Online (Sandbox Code Playgroud)
我已经PYTHONPATH指向python 3.4 / dist-packages:
$ echo $PYTHONPATH
/usr/local/lib/python3.4/dist-packages
$ ls /usr/local/lib/python3.4/dist-packages/selenium
common __init__.py __pycache__ selenium.py webdriver
Run Code Online (Sandbox Code Playgroud)
我/usr/local/lib/pythonX.X/dist-packages在XX是2.7和3.4的地方都安装了行为
任何帮助,不胜感激。
如果您安装 Python 3.x 和 Python 2.7 的 Behave,则每次安装都会安装在该位置启动 Behave 的脚本/usr/local/bin/behave。最后安装的那个将赢得冲突,因为它将覆盖另一个的文件。(输入的文件/usr/local/lib/python<version>/dist-packages没问题,因为<version>每种情况都不同。)
解决此问题的一种方法是仅在 Python 3 上安装 Behave。卸载 Python 2.7 版本并重新安装 Python 3 版本,它应该可以工作。
如果您确实需要为不同的项目使用这两个版本,那么您应该使用它virtualenv来为您正在处理的各个项目创建 Python 安装。这就是我为自己的项目所确定的。
| 归档时间: |
|
| 查看次数: |
1692 次 |
| 最近记录: |