####工作中目前用到的关键字有:Collections 、String 、HttpLibrary.HTTP 、Selenium2Library、RequestsLibrary
FQA
一、Robot framework安装python3.7后,在RIDE窗口添加HttpLibrary.HTTP报红,表示没有成功,如下图所示:
解决方案如下:
a.检查livetest,json是否已成功安装
(如果livetest也安装失败,则
下载https://files.pythonhosted.org/packages/de/77/7ab378ff9e62013f1756b64b1553e126ba7b3f3598bc9c5c8fc508c13d55/livetest-0.5.tar.gz
b.修改 \livetest-0.5\livetest\__init__.py
修改import httplib -> import http.client as httplib
修改import urlparse -> import urllib.parse
修改from Cookie import BaseCookie, CookieError -> import http.cookiejar
修改XXXError, e 为XXXError as e
c.修改 \livetest-0.5\setup.py
修改long_description=file('README.rst').read() -> long_description=open('README.rst').read()
修改version=livetest.__version__ -> version='0.5'
修改author_email=livetest.__author__ -> author_email='storborg@mit.edu'
d.在cmd中切换路径到 \livetest-0.5,执行 python setup.py install,安装成功。
)
e.修改__init__.py (文件路径:C:\Python37\Lib\site-packages\HttpLibrary)
修改from urlparse import urlparse ->from urllib.parse import urlparse
修改except ValueError, e为 except ValueError as e (共两处)
f. 重启ride,导入正常。
------------------------------------------------------------------------------------------------------------------
二、安装并导入Selenium2Library库后,怎么 Open Browser 关键字 还是不管用?
答:由于当前robotframework版本过高,与Selenium2Library 版本不协调,把RF降成3.1.2就可以了;
执行 pip install robotframework==3.1.2
--------------------------------------------------------------------------------------------------------------------------------
三、python 2.7在运行时报错 'ascii' codec can't decode byte 0xce in position 188: ordinal not in range(128),
答:该提示为python 编码问题, 打开文件 C:\Python27\Lib\mimetools.py 找到 import sys 在其下添加如下代码,
if sys.getdefaultencoding() != 'utf-8':
(这里记得首行缩进) reload(sys)
sys.setdefaultencoding('utf-8')
如果不能安装成功,把utf-8改为gbk。