python3+requests+unittest实战详解(一)

1、环境准备

python3 + pycharm编辑器

2、框架目录展示

(该套代码只是简单入门,有兴趣的可以不断后期完善)

python3+requests+unittest实战详解(一)_第1张图片

(1)run.py主运行文件,运行之后可以生成相应的测试报告,并以邮件形式发送;

(2)report文件夹存放测试结果报告;

(3)unit_test文件夹是存放测试用例(demo.py和test_unittest.py用例用法介绍,实际项目中可以按照不同模块新建python package,来存放不同模块的接口用例);

(4)util对测试接口相关方法的封装:HTMLTestRunner.py生成测试报告的封装;send_mail.py发送邮件的封装;test_get_post.py接口请求类型的封装。

同时,我也准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺,免费领取

软件测试视频教程观看处:

华测教育软件测试进阶全套视频教程(2023全网最新版,软件测试进阶自学必备)

3、代码实现说明

(1)get、post接口请求实例介绍

【1】requests.get()、requests.post()用法自行百度

【2】请求之后对返回结果进行断言:assertEqual()等,断言方法很多,可上网查询

python3+requests+unittest实战详解(一)_第2张图片

(2)实际中,有些参数或方法在执行用例之前必须说明,这就涉及到setUp、tearDown、setUpClass、tearDownClass的用法

【1】setup():每个测试函数运行前运行;teardown():每个测试函数运行完后执行;setUpClass():必须使用@classmethod 装饰器,所有test运行前运行一次;tearDownClass():必须使用@classmethod装饰器,所有test运行完后运行一次

【2】也可以对某些用例执行过程中跳过:unittest.skip(),具体使用方法可上网查询

python3+requests+unittest实战详解(一)_第3张图片

(3)如果每次接口请求时都使用requests/get、post请求实在是繁琐,我们可以对该方法进行封装,接口请求时直接调用即可

python3+requests+unittest实战详解(一)_第4张图片

(4)测试用例编写完之后,主函数run.py直接使用unittest模块将所有用例一并执行

【1】unittest模块:TestSuite 多个测试用例集合在一起;TestRunner 是来执行测试用例的,测试的结果会保存到TestResult实例中,包括运行了多少测试用例,成功了多少,失败了多少等信息(unittest.TextTestRunner().run(suite))

【2】suite.addTests()和suite.addTest()均可实现

# 2种用法:第一种suite.addTest()
suite.addTest(Case('test_case01'))
suite.addTest(Case('test_case02'))
suite.addTest(Test('test_01'))
suite.addTest(Test('test_02'))
 
#2种用法:第二种suite.addTests()
suite.addTests(map(Test, ["test_01", "test_02"]))
suite.addTests(map(Case, ["test_case01", "test_case02"]))

【3】TestRunner测试结果输出到控制台,要将测试结果输出到report中,使用HTMLTestRunner.py文件(该文件参考地址:https://github.com/huilansame/HTMLTestRunner_PY3)

python3+requests+unittest实战详解(一)_第5张图片

(5)测试完成之后,想要将测试结果发送邮件给相关人员

发送邮件具体实现方法,搜索:(利用SMTP协议发送QQ邮件+附件)

python3+requests+unittest实战详解(一)_第6张图片

说明:

1.代码中涉及到的测试数据都屏蔽掉了,可以直接使用自己负责项目的真实数据进行了解;

2.该套测试脚本相对基础,需要完善的地方还要很多,欢迎各位学习交流;

3.后续会再写一篇博客接口自动化测试(二),实现Excel来管理用例等。

4、写在最后

PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近500个G。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

☑ 240集-零基础到精通全套视频课程
☑ [课件+源码]-完整配套的教程
☑ 18套-测试实战项目源码
☑ 37套-测试工具软件包
☑ 268道-真实面试题
☑ 200个模板-面试简历模板、测试方案模板、软件测试报告模板、测试分析模版、测试计划模板、性能测试报告、性能测试报告、性能测试脚本用例模板(信息完整)

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

 

你可能感兴趣的:(python,软件测试,自动化测试,测试工程师,unittest,测试工具,功能测试)