目录:导读
前言
流程相关的接口,主要用 session 关联,如果写成函数,s 参数每个函数都要带,每个函数多个参数,这时候封装成类会更方便。以发布文章为例
接口封装大致流程
1、在接口测试中,有些接口经常会被用到比如登录的接口,这时候我们可以每个接口都封装成一个方法,如:登录、保存草稿、发布随笔、删除随笔,这四个接口就可以写成四个方法
2、接口封装好了后,后面我们写用例那就直接调用封装好的接口就行了,有些参数,可以参数化,如保存草稿的 title 和 body 两个参数是动态的。调用时直接将其传入方法中,就可以了
3、像这种流程类的接口,后面的会依赖前面的,我们就可以通过 session将其关联起来
4、将自动化测试脚本保存到 login.py文件中,这样就可以是脚本和业务分离
实战实例
第一步:在pycharm中左上角点击“file”,然后点击“New Project”,修改名字为“jiekou”,点击“Create”
第二步:在jiekou文件夹下,分别创建python package分别命名为“blog”和“case”
第三步:都完成后,如下
第四步:在login.py文件中编辑自动化测试脚本
用例导入接口
1、导入上面 login.py 模块写的接口自动化测试脚本
2、在test_01.py中编辑测试用例
参考代码
login.py文件
import requests
import urllib3
urllib3.disable_warnings()
import warnings
warnings.simplefilter("ignore", ResourceWarning)
class Blog():
def __init__(self, s):
s = requests.session() # 全局参数
self.s = s
def login(self):
'''登录接口'''
url = "http://localhost:8080/jenkins/j_acegi_security_check"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0"
} # get方法其它加个ser-Agent就可以了
d = {
"j_username": "admin",
"j_password": "111111"