-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathautoTest.txt
72 lines (55 loc) · 2.41 KB
/
autoTest.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
接口自动化大概思路:
a-发送请求。。。b-返回结果。。。c-验证结果。。。
httpclient来发送不同类型的请求给到待测的接口,如GET, POST, PUT, DELETE,
带上你的请求头header和请求体body,然后通过http请求返回的数据,与期望值做比较,从而判断用例成功还是失败。
a-发送请求:
http接口,需要调用http请求的库(request),进行二次封装,用来发送各种请求的类,发送请求之前需要准备测试用例,测试用例
包含url,data,请求方式,body,返回结果,测试结果,期望值。测试用例用的是excel进行维护,这时候就需要openpyxl,进行二次封装
调用,对excel表格进行读写。
维护测试用例
接口本质就是增删改查,优先做查的接口,增删改也差不多业务流程的。
查接口:你可以统一放在同一个excel表格,日常不需要怎么维护,你也可以写死在代码里面,具体看你怎么做,怎么方便怎么来。
增删改接口:需要人工维护,主要维护body,请求体替换数据统一用$key,替换的值value你可以从数据库那边查出来,也可以查接口那边获取下来。
参数化,遍历替换body
#查接口产生,或者数据库查询
value_list=['fangjunjie','ceshibu','18']
#人工维护
key_list=['name','department','age']
#替换的body
str="{'name':'$name','department':'$department','age':'$age'}"
for i in range(len(key_list)):
str=str.replace('$'+key_list[i],value_list[i])
print(str)
b-返回结果
将返回数据和测试结果回写到excel表格里,输出html报告
c-验证结果
验证结果思路大概有以下几种:
{ "status":200,
"message":"OK",
"data":"a7f58c47-92ca-4d3a-904c-8e08a36afef5"
}
V1.0
从0到1,初期搭建好自动化框架,底层封装一些工具的方法,断言使用status和message进行维护,到时候维护的时候,根据接口文档设计接口用例,
不同的status和message都要设计好,利用Jenkins进行定时构建,发送html报告。
V1.1
对底层的一些方法进行优化,代码里集成发送邮件,将测试报告发到对应的人上,也可以将测试结果发送到钉钉上对应的人,V1.1版本需要优化一下断言和持续时间,
断言的话加上json检验,可以将上一次json数据与这次接口请求的json进行遍历校验,主要校验json里key的value值是否为null,key值是否多了还是少了?持续时间主要是
查接口和一些增删改接口,简单来说就是主业务的接口,时间还是258定理。
{ "status":200,
"message":"OK",
"age":18,
"data":"a7f58c47-92ca-4d3a-904c-8e08a36afef5"
}
{ "status":200,
"message":"OK",
"data":""
}
V1.2
接口自动化-平台化,设计存放用例的表,测试结果表,json数据表等等。。。
测试用例直接用数据库进行存放,到时候维护的时候,直接维护数据库,这样子会方便很多,记得一开始的表结构要设置得比较好,要往平台化的方向进行想象。
V1.3
接口自动化平台的搭建,集成定时构建,一键发送请求,生成测试报告,发送测试报告。又是0到1的过程。
待续。。。