• 0
  • 0
分享

  数据独立性是指测试数据在测试执行各阶段的完整性和一致性,不会受到其他任务执行结果的影响。测试执行时,会存在当前被测系统手工案例与自动化案例使用同一测试环境的测试数据问题,在手工测试执行过程中,对测试数据的增删改可能会影响到自动化案例的执行,导致自动化案例执行不通过。本文介绍一些常见的测试数据准备方法,保证手工测试和自动化测试的数据独立性。

  一、建立独立的测试环境或数据库

  手工测试和自动化测试采用不同的测试环境或数据库,是数据独立性较为简单的解决办法。如可以单独建立自动化测试环境与手工测试环境,测试执行过程中,自动化测试使用独立的自动化测试环境,手工测试采用手工测试环境。避免了手工测试和自动化测试并行执行时数据相互影响的问题,测试数据也可以单独管理。

  局限性:单独建立及维护手工和自动化测试环境成本较高。

  例如,某系统单独准备两套独立的测试环境,分别用于手工测试与自动化测试。

1-1.png

  二、测试数据标签区分

  由于环境建立困难或一些其他原因,可能无法单独建立独立的环境,还可以采用测试数据选定字符标签进行区分,达到数据独立性的要求。在测试数据准备时,对选定字段进行标记,如标记为“手工测试用、自动化测试用”,然后在测试执行时,只对特定标签的测试数据执行,达到不同类型测试独立并行执行的要求。

  局限性:需要人为选择测试数据操作进行相关控制。

  例如,某系统个人信息查询界面查询结果,执行手工测试时,只对张**相关数据进行操作;执行自动化测试时,只对李*相关数据进行操作。

1-2.png

  以上列举的两个方法,是保证手工测试和自动化测试数据独立性最为基本且简单的方法,但却有效的解决了环境和数据无法隔离开或手工测试与自动化测试不能并行执行的问题。数据管理中,数据独立性也是一直以来的重点及难点。希望以上两点对大家能有所帮助。



作者:龙业达   

来源:http://www.51testing.com/html/19/n-4479819.html


2021 问卷礼物图.png

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 先通过一个简单的类比说个好理解的,这个比喻是我从美版知乎Quora上看到的,觉得比较形象、好理解拿来用用。可以把WebDriver驱动浏览器类比成出租车司机开出租车。类比在开出租车时有三个角色:乘客:他/她告诉出租车司机去哪里,大概怎么走 出租车司机:他按照乘客的要求来操控出租车 出租车:出租车按照司机的操控完成真正的行驶,把乘客送到目的地在WebDriver中也有类似的三个角色:自动化测试代码:自动化测试代码发送请求给浏览器的驱动(比如火狐驱动、谷歌驱动) 浏览器驱动:它来解析这些自动化测试的代码,解析后把它们发送给浏览器 浏览器:执行浏览器驱动发来的指令,并最终完成工程师想要的操作。所以在...
            0 0 1169
            分享
          •   好多人都觉得测试经理已经不进行实际的测试工作了,是不是只是管管人就行了?  当然不是了,下面我们就来探讨一下测试经理到底每天都在干什么。  需求分析  作为测试经理来讲,必须对需求了解的非常透彻,那么在拿到一个需求或者项目的时候,通过需求分析报告,能准确的提出项目的可行性建议以及可能存在的风险。  避免在项目进行过程中发现了方向性的问题或者无法跨越的鸿沟。  编写测试计划  拿到测试需求后,最主要的工作不是马上就开始测试,而是需要根据提测的功能,合理的分配测试人员,编写可行性的测试计划,以保证项目或者需求能按时的完成。  用例评审  在测试人员根据需求编写完测试用例之后,测试经理应该组织相...
            0 0 1745
            分享
          •   最近,项目上出于系统性稳定性、减少测试工作量考虑,打算在 Web 前端引入 BDD。由于上一个项目写了一定的 Cucumber 代码(BDD 测试框架之一),这个框架选型的责任便落到了我的肩膀上了。  在我们进行框架选型的时候,着重考虑了一个因素:测试实现脚本是由开发人员编写的,因此最好寻找 JavaScript 支持的框架。在搜索了一天后,选择了三个框架 Cucumber、Robot、Gauge。以下是上述的三个框架入选的原因:  Cucumber,团队的开发人员有一些有相关的开发经验、支持 JavaScript。  Robot Framework,测试人员接受过相关的培训、不支持 Ja...
            0 0 439
            分享
          •   Meta 公司昨日发布公告,宣布和环球音乐集团(Universal Music Group)深化合作,达成了新的多年合作协议。  Meta 公司在公告中表示,新协议反映了双方共同致力于保护人类创作者和艺术,包括确保艺术家和词曲作者得到公平报酬,帮助艺术家和词曲作者在 Meta 平台上提供更广阔的发展空间和商业机遇。  两家公司并未披露协议细节,不过双方表示会进一步推动 UMG 艺术家和环球音乐出版集团歌曲作者在 Facebook、Instagram、Messenger、Horizon、Threads 以及 WhatsApp(首次出现)等 Meta 平台上创作和运营。  从报道中获悉,两家公...
            0 0 293
            分享
          •   Web 自动化是指使用测试脚本在 Web 上自动执行任务。它包括填写表单、导航网页、单击链接或按钮以及从网站中提取数据等任务。  它可用于各种目的,例如自动输入数据或测试网站的功能。有几种工具和编程语言可用于自动化网络上的任务,包括Selenium,Cypress,Playwright等。  由于有无数的浏览器,例如 火狐 和 铬.大多数用户认为网络浏览器旨在获取所需的信息并浏览不同的网页。当我们涉及 Web 应用程序开发时,它远不止于此。为了确保您的应用性能出色,最好执行自动跨浏览器测试,这是在不同浏览器、操作系统和设备上测试网站的理想方式。  什么是网络自动化?  Web 自动化是使用...
            0 0 686
            分享
      • 51testing软件测试圈微信