接口测试数据引发的接口测试代码改进(之二)

简介: 接口测试数据引发的接口测试代码改进(之二)

第五阶段:进一步优化


把第四阶段代码进行进一步的优化并且把测试代码对数据校验的代码在util.py中建立方法check_condition_for_user,代码如下。


image.png


测试代码简化为。

   

image.png


下面来看一下如何测试建立订单。先来看一下订单相关的数据库表。

● goods_orders:一个用户下的所有的订单。包含创建时间、支付状态和送货地址编号。

● goods_order:一个商品对应的订单。包含数量,商品编号,用户编号和表goods_orders的外键。


可见,建立一个订单与用户、商品、配货地址有关。在excel的第二sheet中建立商品信息(包括商品名、单价、图片名以及描述)、在第二sheet中建立配货地址信息(包括配货地址和电话)。同样建立方法check_condition_for_order(),验证商品信息,地址信息是否在产品数据库中存在,如果不存在就用excel表中的数据建立。在这里建立一个购买三个商品的订单,订单编号分别为1、2、3。


image.png


其中get_user_id(username)获取当前和用户的id号。

image.png


check_goods_for_order(goods_name,goods_price,goods_pic,goods_desc),检查是否存在id为1、2、3的商品信息,如果没有,就用excel表中的数据(goods_price,goods_pic,goods_desc来自excel表)。


image.png


get_user_addess_id获得用户的配货地址信息,如果这个用户没有配货信息,用excel里的地址信息建立(address_name,phone来自excel表)。


image.png


特别提醒,如果是测试程序建立的数据,应该通过print语句输出提示信息。方法check_condition_for_order(self)返回用户名、密码、用户编号、和配送地址编号给测试程序。


image.png


建立订单首先要登录系统,requests类通过Session()方法来建立链接信息,定义之后,必须先建立一个对登录url的接口访问,即语句data = mysession.post(self.url_product,data=payload,cookies=self.cookie)。建立订单post参数里面包括配货地址号以及csrf token;cookies中除了有cserftoken,还有订单的商品id,{"1":"1","2":"2","3":"3"}表示订单中第一条商品id为1、第二条商品id为2以及第三条商品id为3。最后注意,由于这个订单式测试程序创建的,所以验证完毕,注意删除,不要在产品数据库中留下垃圾数据。


image.png


书写完了建立订单的操作,看看删除订单的测试代码。删除订单首先要建立订单,建立订单之前仍旧需要检查订单数据的有效性,有了前面测试用例的封装,有些代码就可以复用了。在这里先展示测试代码。


image.png


check_condition_for_order()仍旧可以使用,然后使用数据库建立订单数据。


image.png

最后测试删除url代码。


星云测试

http://www.teststars.cc

奇林软件

http://www.kylinpet.com

联合通测

http://www.quicktesting.net


顾翔凡言:

     困而学之,学而知之,知而不困,不困则不学,不学则不知,不知则又困也,故学无终止。

目录
相关文章
|
4月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
397 1
|
3月前
|
安全 数据管理 测试技术
告别蛮力:让测试数据生成变得智能而高效
告别蛮力:让测试数据生成变得智能而高效
438 120
|
5月前
|
算法 IDE Java
Java 项目实战之实际代码实现与测试调试全过程详解
本文详细讲解了Java项目的实战开发流程,涵盖项目创建、代码实现(如计算器与汉诺塔问题)、单元测试(使用JUnit)及调试技巧(如断点调试与异常排查),帮助开发者掌握从编码到测试调试的完整技能,提升Java开发实战能力。
508 0
|
3月前
|
安全 Java 测试技术
《深入理解Spring》单元测试——高质量代码的守护神
Spring测试框架提供全面的单元与集成测试支持,通过`@SpringBootTest`、`@WebMvcTest`等注解实现分层测试,结合Mockito、Testcontainers和Jacoco,保障代码质量,提升开发效率与系统稳定性。
|
4月前
|
人工智能 边缘计算 搜索推荐
AI产品测试学习路径全解析:从业务场景到代码实践
本文深入解析AI测试的核心技能与学习路径,涵盖业务理解、模型指标计算与性能测试三大阶段,助力掌握分类、推荐系统、计算机视觉等多场景测试方法,提升AI产品质量保障能力。
|
4月前
|
存储 测试技术 API
数据驱动开发软件测试脚本
今天刚提交了我的新作《带着ChatGPT玩转软件开发》给出版社,在写作期间跟着ChatGPT学到许多新知识。下面分享数据驱动开发软件测试脚本。
141 0
|
12月前
|
数据可视化 前端开发 测试技术
接口测试新选择:Postman替代方案全解析
在软件开发中,接口测试工具至关重要。Postman长期占据主导地位,但随着国产工具的崛起,越来越多开发者转向更适合中国市场的替代方案——Apifox。它不仅支持中英文切换、完全免费不限人数,还具备强大的可视化操作、自动生成文档和API调试功能,极大简化了开发流程。
|
7月前
|
Java 测试技术 容器
Jmeter工具使用:HTTP接口性能测试实战
希望这篇文章能够帮助你初步理解如何使用JMeter进行HTTP接口性能测试,有兴趣的话,你可以研究更多关于JMeter的内容。记住,只有理解并掌握了这些工具,你才能充分利用它们发挥其应有的价值。+
1097 23
|
9月前
|
SQL 安全 测试技术
2025接口测试全攻略:高并发、安全防护与六大工具实战指南
本文探讨高并发稳定性验证、安全防护实战及六大工具(Postman、RunnerGo、Apipost、JMeter、SoapUI、Fiddler)选型指南,助力构建未来接口测试体系。接口测试旨在验证数据传输、参数合法性、错误处理能力及性能安全性,其重要性体现在早期发现问题、保障系统稳定和支撑持续集成。常用方法包括功能、性能、安全性及兼容性测试,典型场景涵盖前后端分离开发、第三方服务集成与数据一致性检查。选择合适的工具需综合考虑需求与团队协作等因素。
1365 24