mo 慕客 完整版本去这个地方 donwdload:
https://juejin.cn/post/7100545596146057224
前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自动化框架,使用的是java语言,但对于一个学java,却在学python的我来说,觉得python比起java更简单些。
所以,我决定自己写python的接口自动化测试框架,由于本人也是刚学习python,这套自动化框架目前已经基本完成了,于是进行一些总结,便于以后回顾温习,有许多不完善的地方,也遇到了许多的问题,希望大神们多多指教。
下面我就进行今天的主要内容吧。
1、首先,我们先来理一下思路。
正常的接口测试流程是什么?
脑海里的反应是不是这样的:
确定测试接口的工具 —> 配置需要的接口参数 —> 进行测试 —> 检查测试结果(有的需要数据库辅助) —> 生成测试报告(html报告)
那么,我们就根据这样的过程来一步步搭建我们的框架。在这个过程中,我们需要做到业务和数据的分离,这样才能灵活,达到我们写框架的目的。只要好好做,一定可以成功。这也是我当初对自己说的。
class BdmmsSpider(scrapy.Spider):
name = 'bdmms'
allowed_domains = ['music.taihe.com']
start_urls = ['http://music.taihe.com/']
def parse(self, response):
class DetailVisitView(View):
"""统计分类商品的访问量"""
def post(self, request, category_id):
# 接收参数和校验参数
try:
category = GoodsCategory.objects.get(id=category_id)
except GoodsCategory.DoesNotExist:
return http.HttpResponseForbidden('category_id 不存在')
# 获取当天的日期
t = timezone.localtime()
# 获取当天的时间字符串
today_str = '%d-%02d-%02d' % (t.year, t.month, t.day)
# 将当天的时间字符串转成时间对象datetime,为了跟date字段的类型匹配 2019:05:23 2019-05-23
today_date = datetime.strptime(today_str, '%Y-%m-%d') # 时间字符串转时间对象;datetime.strftime() # 时间对象转时间字符串
既然整体结构有了划分,接下来就该一步步的填充整个框架了,首先,我们先来看看config.ini和readConfig.py两个文件,从他们入手,个人觉得比较容易走下去哒。
我们来看下文件的内容是什么样子的:
相信大家都知道这样的配置文件,没错,所有一成不变的东西,我们都可以放到这里来。哈哈,怎么样,不错吧。
现在,我们已经做好了固定的“仓库”。来保存我们平时不动的东西,那么,我们要怎么把它拿出来为我所用呢?
这时候,readConfig.py文件出世了,它成功的帮我们解决了这个问题,下面就让我们来一睹它的庐山真面目吧。



