基于py2的自动化测试编码问题很严重,如果你对编码规范不是很了解,安装不出错误还好,出错的话网上的解答方案不是很齐全。这里我把所有遇到的问题都列出来。如果出现这样的问题就对应改就好了。
Robotframework 之pip安装(一)
Robotframework 之exe安装(二)
Robotframework安装过程中错误解决方案(三)
一、pip不能用,出现一下错误
步骤①
Python -m pip install --upgrade pip
使用出错
即出现以下错误:
UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xb4 in position 7: ordinal not in range(128) You are using pip version 9.0.3, however version 18.1 is available. You should consider upgrading via the ‘python -m pip install --upgrade pip’ command.
步骤②
解决方案:找到下面文件F:\Python27\Lib\mimetypes.py
编辑该文件,在import下加入以下代码并保存:
if sys.getdefaultencoding() != 'gbk':
reload(sys)
sys.setdefaultencoding('gbk')
看图片:
步骤③
再次运行上面的命令即ok
然后用命令安装robotframework、ride等必要的软件,具体参考
Robotframework 之pip安装(一)
二、如果用pip安装wxPython的话,安装的是最新的版本,RIDE就会打不开
可以看到这里的我们安装的py27对应wxpython的版本是2.8.12.1,我们用以下命令查看用pip安装的wxpython的版本
python -m pip show wxpython
所以卸载当前wxpython
pip uninstall wxpython
本来可以采用下面的命令安装对应的版本的,但是命令找不到对应的库
pip install wxpython==2.8.12.1
所以我们只能下载对应的exe文件,手动安装
https://sourceforge.net/projects/wxpython/files/wxPython/
三、RIDE运行项目没有信息
步骤①
一定要用命令打开ride,因为这样如果出错的话,可以在cmd里查看错误信息。
进入Scripts目录下,执行下面命令打开RIDE
python ride.py
步骤②
创建case这里就不详细介绍了
这里再case里写入一行log
然后运行没有任何信息
步骤③
这是查看cmd,提示以下错误:
UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xb4 in position 9: ordinal not in range(128)
又是编码的错误
步骤④
我们找到上面的testrunner.py文件进行编辑,修改以下内容:
在第40行加入下面内容:
把403行的UTF-8改成gbk
步骤⑤
保存后,再重启RIDE
完美解决!