繁体   English   中英

在 Azure DevOps 管道中找不到 Pytest

[英]Pytest not found in Azure DevOps Pipeline

在我的 Azure DevOps 管道中

( https://dev.azure.com/TheNewThinkTank/dark-matter-attractor/_build?definitionId=2&_a=summary )

我有一个测试阶段,我希望在相应的 Azure DevOps 存储库中的所有 Python 文件上安装和运行 pytest

https://dev.azure.com/TheNewThinkTank/_git/dark-matter-attractor )。

Pytest的安装运行方式遵循微软官方文档:

- script: |
    pip install pytest
    pip install pytest-cov
    pytest tests --doctest-modules --junitxml=junit/test-results.xml --cov=. --cov-report=xml --cov-report=html
  displayName: 'Test with pytest'

可以在以下位置找到: https://learn.microsoft.com/en-us/azure/devops/pipelines/ecosystems/python?view=azure-devops

运行 Pipeline 导致上述步骤报错: pytest: command not found

如果你想看到完整的回溯:

https://dev.azure.com/TheNewThinkTank/dark-matter-attractor/_build/results?buildId=62&view=logs&j=792982d5-3bb1-5d82-222e-228148b73448&t=1f7e9bd0b0b-31cdf7-9

我尝试过的其他事情:

按照官方 pytest 站点( https://docs.pytest.org/en/stable/getting-started.html ),我尝试在安装命令中添加一个标志: pip install -U pytest

是什么阻止管道发现已安装的 pytest 模块?

请尝试python -m pytest

- script: |
    pip install pytest
    pip install pytest-cov
    python -m pytest tests --doctest-modules --junitxml=junit/test-results.xml --cov=. --cov-report=xml --cov-report=html
  displayName: 'Test with pytest'

安装在 pip 上的模块不被识别为系统级命令。

@Krzysztof Madej,当前目录未作为 PYTHONPATH 加载,因此出现模块未找到错误

 /usr/lib/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
tests/test_cfn_params_handler.py:17: in <module>
    from manifest.cfn_params_handler import CFNParamsHandler
E   ModuleNotFoundError: No module named 'manifest'

暂无
暂无

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

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