GitHub Action报错:启动/bin/bash时找不到指定工作目录
解决GitHub Action执行Selenium测试时的路径与Shell错误
可能的原因及对应修复方案
1. 缺失代码检出步骤
GitHub Actions Runner不会自动拉取仓库代码,若未执行actions/checkout,指定的工作目录可能根本不存在。
- 修复:在所有测试步骤前添加检出步骤:
steps: - name: Checkout code uses: actions/checkout@v4
2. 硬编码工作目录引发路径错误
避免手动写死工作目录路径,改用GitHub内置变量${{ github.workspace }},它会自动指向当前仓库的正确工作目录:
- 错误示例:
working-directory: '/Users/runner/work/java-sdet/java-sdet-bootcamp'
- 修复:
working-directory: ${{ github.workspace }}
3. Shell路径指定不合理
直接写/bin/bash可能在部分runner环境下路径不匹配(比如部分macOS runner的bash路径为/usr/local/bin/bash),改用通用的bash让Runner自动解析正确路径:
- 错误示例:
steps: - name: Run test shell: /bin/bash run: mvn test
- 修复:
steps: - name: Run test shell: bash run: mvn test
4. 调试验证工作目录与Shell可用性
添加调试步骤,确认目录存在且bash可正常访问:
steps: - name: Check workspace and shell run: | pwd ls -la ${{ github.workspace }} which bash
5. 确保Runner环境与路径逻辑匹配
若YAML中指定了runs-on: windows-latest,但错误路径是macOS风格的/Users/...,会导致环境完全不兼容。需保证runs-on与路径逻辑一致:
- 适配macOS环境:
runs-on: macos-latest
- 适配Ubuntu环境:
runs-on: ubuntu-latest
内容的提问来源于stack exchange,提问作者Nikolay Advolodkin
相关产品推荐
相关产品推荐

