python自动化测试-基于 Python 的接口自动化测试实例

1 转换测试数据

1.1将用例数据(红色部分)从excel读取出来,并保存在列表中

测试用例写在excel里面,第一列是编号,第二列到倒数第六列是填写的测试数据,

最后五列分别是用例描述,提交数据,结果返回,预期结果,实际结果

其作用:

用例描述:描述这条用例的设计的意义

提交数据:记录由测试数据转换成的json字符串,

结果返回:记录的接口提交测试数据后所返回的结果

预期结果:用例的预期,是通过还是不通过

实例结果:测试后,该用例是否通过

7b2f89eb-151c-4d6b-97a5-645c76391865.png!large

1.2相关代码

4c809a5c-3b58-4ba9-b05a-71d86bf64e85.png!large

1.3代码流程图

e108ee7c-9b6d-4fbf-9558-b1c2df2b3884.png!large

1.4生成字典格式的字符串,并保存到txt文件中

使用zip函数,将列表的dataresult的第1项(name、remark、type)与第2、3、...、最后 项的数据合并起来,以字典的形式放入列表result中。

175ee6db-96ed-4e3d-a6cc-960c83eede1a.png!large

最后将列表result中的每一条数据写到txt文件中

a50d32f5-161f-4627-8528-54739d415601.png!large

1.5备注

涉及操作文件:

1:保存测试用例的excel文件

2:保存每条测试数据转换成json格式的txt文件

涉及方法changDataToJson()

bbc1c7da-5994-405a-a42c-461a1835185d.png!large

2:提交数据并记录返回结果

2.1使用接口循环提交参数

所提交的参数是json格式的用例,保存在txt文件中

477d8304-5b0e-4c2b-801f-887db861ea27.png!large

2.2记录返回的结果

记录提交参数后的情况,写入结果文件

结果返回所保存的文件

b653ecd7-cbbe-46e7-a8ef-54b4c697f4ad.png!large

2.3相关代码

a95f1f47-ccf1-41f3-8ba3-6a59f471730e.png!large

2.4测试流程图

e3db26a4-cb9f-44c6-bc4a-1cde78692ce7.png!large

2.5验证

接口自动化与UI自动化不同,UI自动化是直接操作页面元素,每一个输入、每一个操作都能够清楚看到。

接口测试肉眼是看不到数据传输的情况,所以我们通过抓包来查看提交的数据与返回的信息

在测试过程中,我们可以使用wireshark进行抓包,测试完毕,我们对数据包进行过滤

868315d8-8518-46a7-8792-c93b72f3cbc1.png!large

2.6备注

涉及操作文件:

1:读取参数的json格式txt文件

2:接口返回信息的记录文件

涉及方法

api_test()

7eaccbff-fb0e-4db7-b25b-082b7960fc43.png!large

3:将结果写入用例

3.1将所有信息补全

将所提交的数据,返回结果,实际结果写回到用例对应位置

(返回信息中,如果含有"true’,对应的实际结果写上"pass’,如果含有"false’,对应的实际结果写上"no pass’)

a18bad73-a1f5-4bb3-b221-132cdc29dab9.png!large

3.2备注

涉及操作文件:

1:保存测试用例的excel文件

2:读取参数的json格式txt文件

3:接口返回信息的记录文件

涉及方法

writeResultIntoCase()

fba7ca6e-1e48-40da-8cd4-47a92699fb59.png!large

4:读取excel数据调用接口及对应文件

4.1将关键项写入excel

将模块、子模块、功能、功能接口、测试过程所涉及的用例文件、转化的json文件、结果返回文件都写入excel

运行脚本读取该文件,就可以测试对应接口应该读取哪个用例文件,将用例转换成json后保存哪个文件,测试后返回结果保存哪个文件

d9bd78e2-1155-404f-a59b-7dfae754e385.png!large

4.2创建列表,将每列的数据插入列表中

excel中每一列都创建对应的列表,并插入数据

298340eb-536b-4ec5-8cb2-a3848ec5ef0b.png!large

4.3读取excel数据为实参,调用前面的几个方法

3ac57457-ece6-4d58-bb3c-2fe2f11ce103.png!large

4.4结果

部分输出截图

1db8814e-3498-445e-9951-f7e9712d1e93.png!large

5:整体流程

903825d6-c09b-42b7-809a-625df07f36ae.png!large

你可能感兴趣的:(python自动化测试-基于 Python 的接口自动化测试实例)