为了账号安全,请及时绑定邮箱和手机立即绑定

在 travis 中安装和测试 python 项目

在 travis 中安装和测试 python 项目

有只小跳蛙 2021-09-02 20:04:11
我有这样的文件结构:./    project_name/        __init__.py    setup.py    tests/    .travis.yml所以我在我的 .travis.yml 中运行 py.test。根据我安装包的方式,它要么工作,要么遇到错误。如果我用 安装包pip install -e .,一切都很好,但这有一个缺点,即不是一个现实的安装场景。如果我使用 安装包pip install .,它会像在非开发模式下的另一台机器上一样安装。但是,出现了一个问题:当我运行 pytest 时,我的测试使用import project_name. 然后,python 从目录本地导入,而不是使用已安装的包,并导致ImportMismatchError.处理这个问题的最佳方法是什么?
查看完整描述

2 回答

?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

一种解决方案可能是制作一个tox.ini在顶层调用的文件以与 tox 一起使用。这是一个负责构建环境的工具 - 它就像make但更特定于 python 的东西。如果你做一个tox.ini:


[tox]

envlist = py


[testenv]

commands = pytest tests

deps =

    pytest

然后安装tox使用pip3 install tox,那么就命令tox在命令行中,它会在安装包,运行在一个独立的虚拟环境测试的照顾。


然后,您可以在您的travis.yml:


language: python

python:

  - 3.6

install:

  - pip install tox

script:

  - tox

Travis 将用于tox以更具可重复性的方式运行测试。



查看完整回答
反对 回复 2021-09-02
  • 2 回答
  • 0 关注
  • 166 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信