当前位置: 首页 > news >正文

二 加强门户网站建设惠州百度seo找谁

二 加强门户网站建设,惠州百度seo找谁,南宁建设信息网站,网站建设备案和免备案的区别目录 一、参数化环境准备 1、方式一:在终端(cmd)安装parameterized 2、方式二:在Pycharm中安装parameterized 二、参数化 1、什么事参数化? 2、参数化引入案例 (1)需求 (2&a…

目录

一、参数化环境准备

1、方式一:在终端(cmd)安装parameterized

2、方式二:在Pycharm中安装parameterized

二、参数化

1、什么事参数化?

2、参数化引入案例

(1)需求

(2)代码实现

(3)发现问题

3、参数化的作用

4、参数化的使用方式

5、案例:参数化+断言实现测试多组数据

三、练习


一、参数化环境准备

  • unittest测试框架,本身不支持参数化,但是可以通过安装unittest扩展插件parameterized来实现参数化

  • Python中插件(包/模块)的安装,使用pip工具,PIP是一个python包管理工具,提供了对python包的查找、下载、安装、卸载等功能

1、方式一:在终端(cmd)安装parameterized

  • 安装命令:pip install parameterized

  • 通过pip list查看python中的所有包,包含parameterized即说明安装成功;或通过File->Setting->Project:pythonproject->Python Interpreter查看parameterized是否安装成功;或直接在文件中导parameterized查看是否安装成功(有时需重启Pycharm才能导包)

2、方式二:在Pycharm中安装parameterized

二、参数化

1、什么事参数化?

  • 将测试数据定义到json文件使用

  • 写在用例脚本中

2、参数化引入案例

(1)需求

  • 定义一个实现加法操作的函数,并对该函数进行测试

  • 要求对多组测试数据进行测试

(2)代码实现

(3)发现问题

  • 一条测试数据就需要定义一个测试函数,代码冗余度太高

  • 如果一个测试函数中测试多条数据,最终只会有一个测试结果

3、参数化的作用

  • 通过参数的方式来传递测试数据,从而实现测试数据和用例脚本分离,并实现用例的重复执行

  • 其实就是在书写用例方法时,用变量代替测试数据,在执行时再将测试数据传递给变量

4、参数化的使用方式

  • 导包 ---> from parameterized import parameterizd

  • 使用@parameterized.expand装饰器为测试方法中的参数进行参数化

5、案例:参数化+断言实现测试多组数据

# add.py中定义的add函数
def add(x,y):return x+y
'''
1、导包
2、将测试方法中的测试数据用变量表示
3、组织测试数据,格式[(),(),()],一个元组就是一组测试数据
4、参数化,在测试方法上用装饰器@parameterized。expand(测试数据)
5、运行(直接在测试类或测试方法上运行,使用suite运行,使用unittest.main运行)
'''import unittest
from unittest_csh.add import add
from parameterized import parameterizeddata = [(1, 0, 1), (2, 0, 2), (3, 0, 4)]class TestAdd(unittest.TestCase):@parameterized.expand(data)def test_add01(self, x, y, expected):print('x={} y={} expected={}'.format(x, y, expected))result = add(x, y)self.assertEqual(result, expected)if __name__ == '__main__':unittest.main()

三、练习

需求:

    将测试数据定义为json文件,读取json文件,完成参数化

实现思路:

    从json文件中读取数据,通过参数化的方式传到用例方法中,实现一个用例测试多组数        据,通过suite执行用例

  • 定义add函数
# 定义在add.py文件中的函数
def add(x,y):return x+y
  • 定义json文件
[{"x": 1,"y": 0,"expected": 1},{"x": 2,"y": 0,"expected": 2},{"x": 3,"y": 0,"expected": 4}
]
  • 读取json文件,编写测试用例
import unittest
from unittest_csh.add import add
from parameterized import parameterizedimport json
# 读取json文件中的测试数据
def data_link():with open('add_data.json',encoding='utf-8') as f:data_list = json.load(f)#print(type(data_list)) #<class 'list'>#print(data_list) #[{'x': 1, 'y': 0, 'expected': 1},{}]new_list = []for data in data_list:   #data 字典x = data.get('x')y = data.get('y')expect = data.get('expect')new_list.append((x,y,expect))return new_list   # new_list = [(1,0,1),(),()]class TestAdd01(unittest.TestCase):@parameterized.expand(data_link())def test_add001(self,x,y,expect):result = add(x,y)print('x={} y={} expected={}'.format(x,y,expect))self.assertEqual(expect,result)
  • 执行测试用例
import unittest
from unittest_csh.addtest_adddata import TestAdd01suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(TestAdd01))
runner = unittest.TextTestRunner()
runner.run(suite)
http://www.dinnco.com/news/20564.html

相关文章:

  • 广州网站建设的地方推荐资源最多的磁力搜索引擎
  • 崇文企业网站建设公司微信营销的案例
  • 学广告设计需要什么学历网站关键词seo优化公司
  • 怎么做提升网站转化率安徽网站关键字优化
  • 淄博桓台网站建设方案青岛百度快速优化排名
  • 做那个网站比较好最新域名ip地址
  • 南昌政府网站建设百度口碑
  • mysql 注册网站seo发帖论坛
  • 网站如何生成app河南网站建设报价
  • 政府机构网站建设哪里有软件培训班
  • 新网站怎么做seo商业公司的域名
  • 视频投票网站怎么做seo模拟点击有用吗
  • 小程序推广费用一个月需要多少钱关键词优化是什么意思?
  • 做私彩网站经典营销案例100例
  • 网站开发的项目开发成都正规搜索引擎优化
  • 襄阳市城乡建设委员会网站百度推广一级代理商名单
  • 仿做赌博网站宁波seo推广哪家好
  • apache添加网站如何seo搜索引擎优化
  • 网站开发全流程管理课程培训
  • 网站做抽奖活动人工智能培训心得
  • 网站建设后台功能模块网页搜索快捷键是什么
  • 厦门网站建设高级课程企业培训课程表
  • 青岛建网站的公司网络营销ppt怎么做
  • 企业站模板大全网络营销常用的工具和方法
  • 网站怎么做才是对搜索引擎友好最新新闻热点话题
  • 签证网站建设搜索引擎入口yandex
  • 在线crm有哪些优势seo诊断服务
  • 南宁网站建设公司seo诊断优化方案
  • 朝阳网站关键词优化百度知道下载
  • 河北省住房和城乡建设部网站网址收录查询