GitHub Actions无法读取requirements.txt及测试目录配置疑问求助
问题解决指南
一、修复requirements.txt找不到的错误
你遇到的核心问题有两个:
- Workflow未拉取项目代码:GitHub Runner默认不会自动克隆你的仓库,必须添加
actions/checkout步骤才能获取项目文件。 - 依赖文件路径配置错误:你的
requirements.txt实际在.github/workflows目录下,但Workflow里写的是根目录的requirements.txt,自然找不到。
修改后的Workflow依赖安装相关步骤如下:
jobs: build: runs-on: ubuntu-latest steps: # 新增:拉取项目代码到Runner环境 - name: Checkout repository uses: actions/checkout@v4 - name: setup python uses: actions/setup-python@v4 with: python-version: '3.10' - name: Install dependencies uses: py-actions/py-dependency-install@v4 with: path: ".github/workflows/requirements.txt" # 修正为实际路径
另外,建议在依赖安装完成后添加项目安装步骤,确保测试代码能正常导入项目包:
- name: Install project run: pip install .
二、unittest目录配置优化
针对tests文件夹的测试运行,你当前的配置可行,但可以做两点优化:
- 确保测试文件命名符合unittest规范:测试文件需以
test_开头(比如test_search.py),这样discover才能自动识别测试用例。 - 显式指定测试目录,避免路径歧义:
- name: run tests working-directory: tests run: python -m unittest discover -v .
或者不指定working-directory,直接在根目录运行:
- name: run tests run: python -m unittest discover -v tests
完整修正后的Workflow文件
name: testing on: [push,pull_request] run-name: running tests for searchenginepy jobs: build: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: setup python uses: actions/setup-python@v4 with: python-version: '3.10' - name: Install dependencies uses: py-actions/py-dependency-install@v4 with: path: ".github/workflows/requirements.txt" - name: Install project run: pip install . - name: run tests working-directory: tests run: python -m unittest discover -v .
内容的提问来源于stack exchange,提问作者Nikhil Singh
相关产品推荐
相关产品推荐

