前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >接口测试数据引发的接口测试代码改进(之二)

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

作者头像
顾翔
发布2019-12-12 12:10:15
4100
发布2019-12-12 12:10:15
举报

第五阶段:进一步优化

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

测试代码简化为。

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

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

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

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

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

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

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

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

建立订单首先要登录系统,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。最后注意,由于这个订单式测试程序创建的,所以验证完毕,注意删除,不要在产品数据库中留下垃圾数据。

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

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

最后测试删除url代码。

星云测试

http://www.teststars.cc

奇林软件

http://www.kylinpet.com

联合通测

http://www.quicktesting.net

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 软件测试培训 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档