![](/img/trans.png)
[英]Cannot run my script from my GitHub repository using Travic CI: Import error
[英]Cannot import script from repository in pytest using GitHub actions
我正在學習使用 GitHub 操作實施自動測試。 我正在嘗試解決以下導入錯誤。
錯誤是:
utils\test_capitalize.py:2: in <module>
from src.capital import capital_case
E ModuleNotFoundError: No module named 'src'
我的存儲庫的結構是:
example/
|-- setup.cfg
|-- setup.py
|-- pyproject.toml
|-- .github/
| |-- workflows/
| | |-- ci.yml
|-- src/
| |-- capital.py
|-- utils/
| |-- test_capitalize.py
ci.yml
的內容是:
name: ci
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
build-and-test:
runs-on: windows-latest
strategy:
matrix:
python-version: [3.8]
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Build
run: |
python -m pip install .
python -m pip install src
- name: Test with pytest
run: |
python -m pip install pytest
pytest
我認為python -m pip install.
已經在存儲庫中安裝了所有模塊,我對此有誤解嗎?。
編輯:pytest 文件是一個最小示例(我嘗試在推送之前刪除 src):
import pytest
from src.capital import capital_case
def test_capital_case():
assert capital_case('semaphore') == 'Semaphore'
在導入模塊之前,將這些行包含在腳本的 header 中。
import sys
sys.path.append("../")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.