测试中“特殊数据”提出的挑战

Manjula Anandamurthy刚就业时是一名cobol程序员,如今她已在IT界混了20多年。在印度花了10年独立为软件测试项目制定策略并进行管理。她曾在银行,医疗及零售行业当过负责大型软件测试项目的测试经理。她还干过软件工具顾问。

?

  一个精心设计的测试数据管理流程可以保证更高的测试覆盖率并减少终端产品中的缺陷。一个典型的测试数据管理流程包括测试数据需求阶段,期间测试和开发团队成员简单介绍并将所有要求的测试数据合并。还包括对重新测试的更新频率。然而执行测试项目时,我们却发现数据库不仅仅是一个值,一经发布它还有额外惊喜。以下三个数据尤其值得关注:

  例1:隐藏列

   第一例便是一个医疗应用程序。病人数据是高度保密的;受数据保护行动的保护,病人对关于他们的隐藏数据保留某些权力。所有医疗保健单位都必须遵循这一点并确保别人绝对无法获取这些数据。我们正在测试的医疗应用程序有隐藏列。这些隐藏列在设计文件,要求规范或测试用例中无迹可寻。只有在我们将之投入生产时,我们才意识到这些列的存在,且没有做过使用这些列的测试。这种情况下,我们怎么确保发布的产品没有缺陷呢?

  例2:多媒体数据

   另一例:我们在网页用户可以在上面上传视频的网页上进行变更请求。因为用户有可能上传有煽动性的视频,敏感的东西都必须丢弃并从网页上删除。这只能靠人工干预和人为判断而不能靠自动化来完成。不过,我们还是需要用一些测试用例检测这些视频。我们该怎么创建测试数据?难道去上传敏感视频?这么做的话,敏感视频就会留在测试环境中并可能违反信息安全法规。

  例3:多个数据库

   第三例出现在从两个不同源头中提取数据时。比如,遵循HIPAA的法规在个人数据上执行规则。例如个人姓名必须与他们社保卡上的一致。在一些自动服从的数据库中定义这些规则也是有可能的。一个典型的数据库结构是不允许有这些定义的。所以从两个这样的数据库中提取测试数据时,我们最后就会使用不兼容这些规定的测试数据,然后导致不完整的测试。

  这些只是测试员会面临的多种情况中的三个。因此,除了常规测试数据管理流程,测试数据创建阶段还有必要包括以下内容:

   ??一名能够预见数据库结构中这些数据的存在或不存在的领域专家。如果一些重要机密的信息在任一表格内丢失了,领域专家就可以查找去哪可以找到这些数据。测试团队会意识到这类信息的存在,至少在他们的测试用例中发现这类场景并未被覆盖;

   ??一个让测试网页可以上传视频和其他多媒体文件(包括:定期审核一类的活动)的测试计划。有了一些语音识别工具的帮助,这类测试的自动化也是有可能实现的。这类数据的维护也应该被创建,存储和再次利用。一个有效的测试数据管理流程需要一个重要功能的准确环境和可操作数据。认真考虑测试数据管理策略和控制对高效彻底的测试很有必要。

版权声明:本文出自 SPASVO泽众软件测试网:http://www.spasvo.com/news/html/20141028151018.html

原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。

时间: 2024-07-28 12:27:08

测试中“特殊数据”提出的挑战的相关文章

LoadRunner之Paramater在负载测试中的数据生成规则

LoadRunner之Paramater在负载测试中的数据生成规则 前段时间在做性能测试的时候,基于业务的需求,使用到了Unique Number的参数类型. 脚本的业务是注册以alien开头,后面接数字的用户帐号,填写相关帐号信息.提交企业信息进行审核. 其中用户帐号是alien开头拼接一个唯一数字的参数,如图: 下面对Unique Number进行相关解释,先引用官方资料:(相信大家也理解这段话的意思) Unique Number: Assigns a range of numbers to

Jmeter-7 测试中使用到的定时器和逻辑控制器

1 测试中提交数据有延时1min,所以查询数据是否提交成功要设置定时器. 固定定时器页面:单位是毫秒 [dinghanhua] 2 集合点.Synchronizing Timer 集合点编辑:集合用户数,终止等待时间(过了这个时间用户没有达到设置的个数,不再等待) 3  交替控制器.测试中遇到有两个请求每次只能执行其中一个,使用交替控制器. 在控制下添加两个http请求.运行的时候第一次循环执行第一个,第二次循环执行第二个,第三次执行第一个... 其他暂未使用到. the  end!

十步优化SQL Server中的数据访问(转载)

原文地址:http://tech.it168.com/a2009/1125/814/000000814758.shtml 故事开篇:你和你的团队经过不懈努力,终于使网站成功上线,刚开始时,注册用户较少,网站性能表现不错,但随着注册用户的增多,访问速度开始变慢,一些用户开始发来邮件表示抗议,事情变得越来越糟,为了留住用户,你开始着手调查访问变慢的原因. 经过紧张的调查,你发现问题出在数据库上,当应用程序尝试访问/更新数据时,数据库执行得相当慢,再次深入调查数据库后,你发现数据库表增长得很大,有些表

探索式测试中的几种误区

探索式测试(Exploratory Testing)是敏捷测试中的重要组成部分,其价值与一般性测试如用户故事测试或者自动化测试不同,它所关注的是“意料之外”的软件缺陷,探索式测试作 为一个研究性.启发性和严肃性并存的测试方法,是一般性测试的重要补充.随着敏捷测试的推广,探索式测试逐渐受到大家的关注和重视.本文主要探讨了测试工 程师在探索式测试方面的一些误区,并尝试纠正这些问题. 误区1:探索式测试是一种测试技术. 探索式测试本身不是一种测试技术,相反,它是一种可以应用于广泛测试技术的方式或态度.

移动测试中游戏和应用的不同之处

随着智能设备的普及和移动互联网的兴起,各家互联网巨头纷纷在往移动端布局和转型,同时初创的移动互联网公司也都盯着这个市场希望分一杯羹.在这个大环境下,互联网的重心已经慢慢从Web端转向了移动端,而移动端的软件测试也变得越来越重要了.今天就说说移动测试中最重要的两个方向. APP自动化测试完全不同于手游自动化测试 手机App和手游的开发技术不同,这导致了两者的自动化测试技术是截然不同的.以安卓开发举例,手机App一般使用Android SDK开发,使用Java编写.通过Android提供的服务,我们

众包测试中的游戏化

Mahesh Gudipati有超过10年的测试经验,参与过不少不同领域的项目.他在数据仓库/BI测试,需求预测测试,大数据测试和产品测试方面有丰富的经验.他在多个ETL/DW测试项目中实现了自动化技术,并因为开发出了ETL/DW测试的端对端解决方案获得了一项专利.他是一名获PMP认证的项目经理,还管理过多个数据仓库测试项目.他帮助建立公司内部的群体测试流程,最近还一直在开发数据项目中的技术的测试解决方案. Jaya Bhagavathi Bhallamudi在IT行业干了超过16年.她是一名C

web测试中的测试点和测试方法总结

测试是一种思维,包括情感思维和智力思维,情感思维主要体现在一句俗语:思想决定行动上(要怀疑一切),智力思维主要体现在测试用例的设计上.具有了这样的思想,就会找出更多的bug. 一.输入框 1.字符型输入框: (1)字符型输入框:英文全角.英文半角.数字.空或者空格.特殊字符"~!@#¥%--&*?[]{}"特别要注意单引号和&符号.禁止直接输入特殊字符时,使用"粘贴.拷贝"功能尝试输入. (2)长度检查:最小长度.最大长度.最小长度-1.最大长度+1

压力测试中存在的问题

压力测试中存在的问题 (What) 什么是压力测试 软件压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分.软件压力测试的基本思路很简单: 不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试. 通常要进行软件压力测试的资源包括内部内存.CPU 可用性.磁盘空间和网络带宽. 压力测试涵盖,性能测试,负载测试,并发测试等等,这些测试点常常交织耦合在一起. 压力测试存在那些问题 我归纳一下又几点: 操作系统默认安装,在未做任何优化的情况下实施压力测试

(转)SQLServer_十步优化SQL Server中的数据访问一

原文地址:http://tech.it168.com/a2009/1125/814/000000814758_all.shtml 第一步:应用正确的索引 我之所以先从索引谈起是因为采用正确的索引会使生产系统的性能得到质的提升,另一个原因是创建或修改索引是在数据库上进行的,不会涉及到修改程序,并可以立即见到成效. 我们还是温习一下索引的基础知识吧,我相信你已经知道什么是索引了,但我见到很多人都还不是很明白,我先给大家将一个故事吧. 很久以前,在一个古城的的大图书馆中珍藏有成千上万本书籍,但书架上的