我目前正在尝试运行一些非常实现的python协议示例。 python pact testing example接踵而来是最简单的一个。所以我试了一下。 不幸的是我甚至没有让这一个正常运行。我对这些要求非常困惑。 我做的是:
我得到了愚蠢的错误
invoke test_consumer
============================= test session starts ==============================
platform linux2 -- Python 2.7.12, pytest-3.5.0, py-1.5.3, pluggy-0.6.0
rootdir: /home/ubuntu/python-pact-testing-example, inifile:
collected 0 items / 1 errors
==================================== ERRORS ====================================
______________________ ERROR collecting test_consumer.py _______________________
test_consumer.py:11: in <module>
pact.start_service()
/usr/local/lib/python2.7/dist-packages/pact/pact.py:161: in start_service
self._process = Popen(command)
/usr/lib/python2.7/subprocess.py:711: in __init__
errread, errwrite)
/usr/lib/python2.7/subprocess.py:1343: in _execute_child
raise child_exception
E OSError: [Errno 2] No such file or directory
!!!!!!!!!!!!!!!!!!! Interrupted: 1 errors during collection !!!!!!!!!!!!!!!!!!!!
=========================== 1 error in 0.28 seconds ============================
现在我有几个问题:
答案 0 :(得分:1)
我可以建议在存储库中提出问题吗?最后一个提交日期是2017年6月28日,pact-python在过去一年半中经历了大量的发展。不幸的是,requirements.txt中没有指定版本。我的直觉是这个例子已经过时了。
答案 1 :(得分:0)
我想,我得到的错误可能是某种配置问题。使用Python 3.5和这些记录的依赖项,示例运行:
attrs==17.4.0
certifi==2018.4.16
chardet==3.0.4
click==6.7
flask==0.12.2
idna==2.6
invoke==0.22.1
itsdangerous==0.24
jinja2==2.10
markupsafe==1.0
more-itertools==4.1.0
pact-python==0.16.1
pluggy==0.6.0
psutil==5.4.5
py==1.5.3
pytest==3.5.1
requests==2.18.4
six==1.11.0
urllib3==1.22
werkzeug==0.14.1
然而,这并不能回答我最初的问题。我仍然不确定我目前的配置是否稳定。
答案 2 :(得分:0)
该项目绝对处于可用状态,今天用于测试几个专业项目。
使用pip install
中README
概述的
pip uninstall pact-python
pip install pact-python
方法应足以正确安装pact-python。在该安装过程中,它将下载python-pact-testing-example以执行实际的合同工作。
下载该软件包可能会导致模拟服务无法安装在您的计算机上,但今天查看代码我认为它应该在安装过程中被炸毁。我们当然可以通过告诉您哪个文件丢失并且可能是安装问题来看待这种情况更加友好。如果这是问题,这可能会解决问题:
Sys.setlocale("LC_CTYPE", "English")
如果您正在寻找示例,可以查看pact-python的separate package测试。这些说明了项目的许多主要功能和end to end。