(八)接口自动化-ddt模块封装测试数据

在接口测试过程中,针对同一个接口的测试往往只是数据不同,其他形式都相同,这种情况下就可以使用ddt模块,将类型相同的测试数据封装在一起再批量执行,需要注意的是这种情况下要将正反用例分来写,否则断言会冲突。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import unittest
import requests
import ddt

#定义简书的主地址
host = 'http://www.jianshu.com'

#定义简书中两篇文章的资源编号
case_data = ('48e258706b9f','868f71205a7f')

#在类名前面添加ddt修饰
@ddt.ddt
class HomePage(unittest.TestCase):

    def setUp(self):
        print('开始测试,在这里做环境初始化')

    def tearDown(self):
        print('测试结束,在这里做数据还原')

    #在用例前调用测试数据
    @ddt.data(*case_data)
    def test_case_01(self,data):
        #访问简书中的文章
        str_main = '/p/'
        test_url = host + str_main + data
        response = requests.get(test_url)
        result = response.text
        print('data的值为 :%s'%data)
        print('请求url地址:%s'% test_url)
        self.assertIn('unittest',result,msg='断言失败')


if __name__ == '__main__':
    unittest.main()

代码运行效果(有多少个参数,case就会执行多少次):

02.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,286评论 19 139
  • 文章来自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鹏阅读 9,242评论 2 126
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    Mr希灵阅读 22,082评论 7 278
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    宇文臭臭阅读 6,764评论 5 100
  • 第一部分 打好基础 Laying the Foundation 第一章 欢迎进入软件构建的世界 Welcome t...
    白桦叶阅读 4,736评论 0 17