博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
命令行运行python项目文件,报错:ModuleNotFoundError: No module named 'xxxx' 解决办法...
阅读量:5020 次
发布时间:2019-06-12

本文共 816 字,大约阅读时间需要 2 分钟。

在pycharm中写好了自动化测试脚本,并能在pycharm中正常运行,由于要考虑到无人值守时能自动执行,执行时就需要脱离pycharm,直接能用命令执行。但是直接用命令执行用例文件:python3 D:\pycode\autotest_framework\case\run_case.py

结果报错,找不到模块

自动化项目的结构如下:用例run_case.py 和工具类utils下的工具 不在同一个文件夹下面。在脚本中需要导入包如:

from utils.HTMLTestRunner import HTMLTestRunner

 

 分析提示,报错就在import 这里出错。说明在命令中执行用例,没有把项目文件添加为环境变量。需要在代码中把项目文件夹添加为环境变量,添加环境变量思路:

1、找到当前文件run_case.py 的绝对路径 :

current_directory = os.path.dirname(os.path.abspath(__file__))

2、由于测试项目文件夹布局为:run_case.py 的上一级目录才是项目的文件夹,因此需要找到run_case.py 的父文件夹,即项目的根目录

root_path = os.path.abspath(os.path.dirname(current_directory) + os.path.sep + ".")

3、把项目的根目录通过sys.path.append添加为执行时的环境变量

sys.path.append(root_path) 这3步完成后,就可以正常导入项目项目内的包了。就能正常通过命令执行自动化测试了。也就能和jenkins结合在一起了
迎加入自动化测试交流QQ群:143535941 ,进群问题回答:testway 共同讨论自动化问题

转载于:https://www.cnblogs.com/testway/p/9225587.html

你可能感兴趣的文章
【转】ButterKnife基本使用--不错
查看>>
【转】VS2012编译出来的程序,在XP上运行,出现“.exe 不是有效的 win32 应用程序” “not a valid win32 application”...
查看>>
函数中关于const关键字使用的注意事项
查看>>
微信架构(转)
查看>>
Web项目中的路径问题
查看>>
js随机数的取整
查看>>
关于解析漏洞
查看>>
十大经典预测算法(六)---集成学习(模型融合算法)
查看>>
用php做一个简单的注册用户功能
查看>>
一款基于css3的3D图片翻页切换特效
查看>>
Feign使用Hystrix无效原因及解决方法
查看>>
Sizeof与Strlen的区别与联系
查看>>
hadoop2.2.0_hbase0.96_zookeeper3.4.5全分布式安装文档下载
查看>>
Flutter 贝塞尔曲线切割
查看>>
golang 的编译安装以及supervisord部署
查看>>
easyui源码翻译1.32--Dialog(对话框窗口)
查看>>
阿里架构师,讲述基于微服务的软件架构模式
查看>>
Eclipse导入maven项目时,Pom.xml文件报错处理方法
查看>>
01、JAVA开发准备
查看>>
asp.net mvc 错误处理 - 自定义报错处理,生成错误日志
查看>>