运行pytest时出现FileNotFound Error的解决方法求助
解决pytest文件找不到的可行思路
基于代码文件位置构建绝对路径:在project目录的被测试代码里,别直接写相对文件名,改用当前脚本的路径来拼接文件地址,这样不管原代码正常运行还是pytest从test目录启动,都能准确定位到文件,不会影响原有功能。示例代码:
import os # 获取当前代码文件所在目录的绝对路径 current_script_dir = os.path.dirname(os.path.abspath(__file__)) # 拼接xlsx文件的完整路径 filename = os.path.join(current_script_dir, 'postcode_File.xlsx')指定pytest的运行工作目录:如果不想修改代码,运行pytest时可以强制指定工作目录为project文件夹。比如在终端先切换到项目的上级目录,执行:
pytest test/或者用pytest的
--rootdir参数直接指定根目录:pytest --rootdir=./project test/这样运行时的工作目录就是project,原代码里的相对路径就能正常找到文件。
排查复制文件到test目录无效的原因:如果复制后还是报错,先检查文件名是否完全匹配(注意大小写,Linux/macOS下大小写敏感),或者在测试代码里打印当前工作目录确认:
import os print(os.getcwd())看看打印的路径里有没有你复制的xlsx文件,就能定位问题所在。
内容的提问来源于stack exchange,提问作者user14705817
相关产品推荐
相关产品推荐

