数据驱动

(1)什么是数据驱动

在测试活动中经常会使用相同的测试脚本使用不同的测试数据来执行,测试数据和测试行为完全分离, 这样的测试脚本设计模式称为数据驱动。

例如:当我们测试某个网站的登录功能时,往往我们会使用不同的用户名和密码来验证登录模块对系统的影响,那么如果我们每一条数据都编写一条测试用例,这无疑是增加了代码量,代码重复冗余很多,这时候我们可以使用不同数据执行相同的用例测试不同的场景。

(2)实施数据驱动测试的步骤:

①创建测试数据:根据之前设计测试用例的思路来

②封装读取数据的方法,保留测试脚本调用的接口/属性(我们需要传递给脚本什么参数)

③编写自动化测试脚本

④脚本中调用封装好的处理数据文件的模块并引入测试数据

⑤执行测试脚本并分析测试结果

(3)安装Python3.0,安装数据驱动模块ddt

#安装方式:cmd下执行命令:
pip install ddt -i http://pypi.douban.com/simple/ --trusted-host=pypi.douban.com/simple

(4)如何进行数据驱动:在测试用例case里面修改,把从表格读取的所有数据一次进行测试

'''
数据驱动的思想,根据测试设计好的用例数据写到表格,并保存到Excel表格里面。
需要测试的时候在进行读取,如读取一个表格mms_eg,批量对'药品录入’一组数据进行测试。
'''
import unittest
from pages.drugPage import DrugPage
import ddt
from common.readdata import ReadData
​
@ddt.ddt
class TestDrug(unittest.TestCase):'''@ddt.data()中放入的就是读取回来的数据,并且拆分开,一组一组的给传入@ddt.unpack 就是将数据打散,分别传给每一个形参'''#从Excel表格中读取数据infos = ReadData.readExcel('mms_eg','Sheet1')#大列表分为小列表@ddt.data(*infos)#小列表的数据打散,传给每一个形参@ddt.unpack
​#测试添加药品def test_add_drug(self,id,take,drugName,effect):#先进行类的实例化d = DrugPage()
​#调用新增的方法,获取返回值r = d.add_drug(id,take,drugName,effect)
​#断言:如果返回值r=="保存成功“self.assertEqual(r,"保存成功")
​
​

认识数据驱动,数据驱动是怎么使用的相关推荐

  1. WebUI自动化框架 - 数据驱动(ddt、paramunittest)

    数据驱动 数据驱动测试时自动化测试中的主流设计模式之一,属于中级自动化测试工程师必备知识,必须深入掌握数据驱动测试的工作原理和实现方法 概述: 所谓数据驱动,时指相同的测试脚本使用不同的测试数据来执行 ...

  2. ui自动化测试框架_数据驱动 vs 关键字驱动:对搭建UI自动化测试框架的探索

    谢谢打开这篇文章的每个你 关注我们 点击右上角 ··· 设为星标 UI自动化测试用例剖析 让我们先从分析一端自动化测试案例的代码开始我们的旅程.以下是我之前写的一个自动化测试的小Demo.这个Demo ...

  3. android 数据驱动ui,搭建数据驱动型Android架构

    1.数据驱动 数据驱动是一种思想,数据驱动型编程是一种编程范式.基于数据驱动的编程,基于事件的编程,以及近几年业界关注的响应式编程,本质其实都是观察者模型.数据驱动定义了data和acton之间的关系 ...

  4. 如何成为一家真正发挥大数据作用的 “数据驱动型公司”?

    在本章节中,我想试着描述.分享一下大数据在公司商业运营情境当中所扮演的角色. 大数据的能力是从何处而来? 首先,我想先花一点时间来谈谈有关数据的价值,数据所发挥的作用,它是从何处而来的. 我认为「企业 ...

  5. 领域驱动设计 敏捷_反馈失败:发现敏捷数据驱动的致命弱点的风险

    领域驱动设计 敏捷 by Phil Seaton 菲尔·西顿(Phil Seaton) 反馈失败:发现敏捷数据驱动的致命弱点的风险 (Feedback fail: discover the risk ...

  6. 数据库更行通知_哪个更好? 数据驱动还是数据通知?

    数据库更行通知 by Casper Sermsuksan 由Casper Sermsuksan 哪个更好? 数据驱动还是数据通知? (Which is better? Data-Driven or D ...

  7. 论文: Data-Driven Evolutionary Optimization: An Overview and case studies(1) 数据驱动概念,文章结构,大数分类

    声明: 只作为自己阅读论文的相关笔记记录,理解有误的地方还望指正  论文下载链接: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumb ...

  8. 数据 + 进化算法 = 数据驱动的进化优化?进化算法 PK 数学优化

    数据 + 进化算法 = 数据驱动的进化优化?进化算法 PK 数学优化 https://baijiahao.baidu.com/s?id=1600164518587031730&wfr=spid ...

  9. 大数据时代下的新生态、新洞察、新趋势 | 神策 2019 数据驱动大会

    10 月 22 日,以"矩•变"为主题的神策 2019 数据驱动大会在北京维景国际大酒店顺利举行,来自全球大数据各大行业的领袖人物聚首北京,融合国际前沿技术与行业实践,深入探讨大数 ...

  10. 数据驱动的算法工程落地!

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 开源数据平台 格物钛 X Datawhale 导读:随着科技浪潮的演进, ...

最新文章

  1. python networkx绘制图
  2. Java oracle 超出打开游标的最大数
  3. 推荐:常见NLP模型的代码实现(基于TensorFlow和PyTorch)
  4. 「Ubuntu」ModuleNotFoundError: No module named ‘softwareproperties‘
  5. 利用网站模板创建子网站
  6. Harris角点检测算法优化
  7. SQL2008安装 VS2008安装(VS2010存在的情况下)
  8. 华为NP课程笔记4-中间系统到中间系统
  9. 024 正交向量 正交矩阵及性质
  10. 0 win10重装partition_gpt分区无法安装win10的根本原因
  11. 安卓实现APP自动检测软件版本并提示更新
  12. clickhouse 在货拉拉的应用实践,千亿级别数据实现秒级查询
  13. linux的sssd服务,使用FreeIPA为SS信任用户在SSSD上设置默认登录Shell
  14. NLP学习记录——句法分析
  15. 从冰雪盛会的幕后赛场,看数字建设者如何保障大型赛事
  16. 一步一步教你写DOTA外挂
  17. FL Studio音乐编曲入门教程
  18. 八款流行无线黑客工具,非常实用
  19. 【JHOK-ZBZ201型智能型剩余电流继电器】
  20. 师从施一公,从造纸工人到清华教授,CNS12篇,柴继杰再发Science

热门文章

  1. LOJ#2155. 「POI2011 R1」同谋者 Conspiracy
  2. 【图文讲解】映射——单射-双射-满射概念
  3. flutter 单线程异步 及 isolate 使用过程遇到的问题
  4. 去除字符串首尾的空白字符
  5. 云栖社区2017中国开发者调查报告
  6. 苹果待处理订单要多久_苹果官网准备发货到发货要多久呀?
  7. 降低电源纹波噪声的方法
  8. 排除Transformation Errors
  9. File Based Optimizations(FBO,FBO焕新存储技术)介绍
  10. 深度学习方法实现红外图片中人物动作识别