python脚本打包成exe文件--踩坑
前言:测试脚本有些是用python写的,但是测试设备有时候需要在特定的环境下测试;但是不是不是每一台电脑都是安装好环境的,比如:python,allure,request等库;我们想要在一台没有环境的电脑上运行python测试脚本;聪明的你想,要是像普通的执行文件就好了,直接点一下文件就自动执行;那么如何将python脚本打包成exe可执行文件呢?
1、安装pyinstaller
打开pycharm→Terminal里面输入命令:pip install pyinstaller
2、若需要更新版本,输入命令:pip install --upgrade pyinstaller
注:检查是否正确安装:在cmd中输入命令:pyinstaller;会弹出一些命令;即安装成功。
3、打包
安装成功后,执行安装命令:pyinstaller -F xxx.py
xxx:需要打包的文件名
看到有successfully,就是打包完成了。
到项目文件下,找到dist文件夹,里面就放着刚刚生成的exe文件.
注:看着这个exe比较大,原因是把一些代码中用到的库都打包到里面了;别人用就不需要再安装这些库。
踩坑:
把exe文件放到没有环境的电脑上运行;会直接闪退!!!
解决方式:我是直接录屏,然后看闪退时,报的什么错误,根据报错再来找问题然后解决。
下面是我遇到的问题的解决措施:
1、用管理员身份运行exe文件(右键→以管理员身份运行)
下图中是具体的报错提示:
2、用了allure,没把这个打包进去,报错:
ERROR: file or directory not found: --alluredir
升级版本库的版本:pip3 install --upgrade allure-pytest
要导入allure_plugin库;
from allure_pytest import plugin as allure_plugin
如果要把allure打进去 必现要导入这个库;
然后在main中,通过pytest.main()的plugins参数打进入
3、还有些就是代码上的逻辑错误,也会导致报错闪退;
最重要的是看清报的什么错,然后对症下药!!!