RobotFrameWork 接口测试 -- 安装 HttpLibrary,解决 导入 RF 时红色

应用场景:

链接:https://blog.csdn.net/sun_977759/article/details/89333539

使用RF做接口测试,接口响应体里面的内容通常是一个json格式的字符串,可以直接使用Get Json Value(来自HttpLibrary.HTTP库)进行解析,通常用法如下

 

 

 可以使用如/xx/xx/xx这样一层一层的去解析

但是通过get json value获取到的值,会发现如果是个字符串,是带有引号的

 

 

 但是很多时候预期是只需要里面的test,不带引号,这个时候就需要将json字符串转成字典对象了,需要用到To Json(来自RequestsLibrary库)或者Parse json(来自HttpLibrary.HTTP库),这两个关键字实现的功能是一样的,然后通过Get From Dictionary(来自Collections库)去获取对应key的value值

 

 

 

安装相关库

HttpLibrary 需要依赖以下四个库

jsonpointer
jsonpatch
livetest
WebTest

1. pip 安装相关

1) pip install robotframework_httplibrary

2) pip install jsonpointer

3) pip install jsonpatch

2. 下载安装 livetest

1)下载地址分别是,如果 pip 安装失败,可以手动下载再安装

https://pypi.org/project/jsonpointer/#files
https://pypi.org/project/jsonpatch/#files
https://pypi.org/project/livetest/#files
https://pypi.org/project/WebTest/#files

2). 修改相关配置 

解压 livetest-0.5,并修改如下地方:

(1).修改  \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

(2).修改 \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'3).在cmd中切换路径到 \livetest-0.5,执行 python setup.py install,安装成功。

3. 修改 HttpLibrary

1)路径:..\Python37\Lib\site-packages\HttpLibrary\__init__.py

2)修改如下地方:

修改 from urlparse import urlparse ->from urllib.parse import urlparse 

修改 except ValueError, e为 except ValueError as e (共两处)

4. RF 中导入 HttpLibrary.HTTP

 

posted on 2021-08-10 14:19  bruce_he  阅读(542)  评论(0编辑  收藏  举报