有效的内部测试

Alina Avadani于2008年加入了一家专注医疗保健信息领域(移动保健,远程保健,电子保健)的软件开发公司,自此她的QA职业生涯开始了。重点是用瀑布模式手工测试桌面及web应用程序。2012年,她加入了XING(社交网络平台)公司执行手工测试和自动化,并在敏捷环境中提升了她的专业知识和实践工作。她足智多谋,有创意且擅长解决问题,经常能想出新的和创新的方法去解决分配给她的项目。她热衷技术,喜欢与别人合作创造惊奇的事物。认真享受软件测试的乐趣时,她就一心专注于质量和按时交付。她曾参与组织Iasi(http:// tabaradetestare.ro / )上的第一期“测试训练营”,她还是NRG测试比赛“最佳整体软件测试,功能与性能“奖冠军队的一员 。
Katharina Gillmann自2012年就一直在XING股份公司担任QA经理。在此之前,Katharina 学习重点是机器人的计算机科学。她那段时间对机器人杯特别感兴趣。她努力了5年,与B-Human队3次夺得世界机器人杯冠军。卡塔琳娜在加入XING公司前就对软件测试过程产生了浓厚兴趣。出于这个原因,她在MeVis医疗解决公司(一家开发用于检测乳腺癌的软件的医疗公司)当了五年软件测试人员。Katharina 目前专注于敏捷环境内Web应用程序的软件测试

?

   许多组织机构在软件开发过程中重点(或一心只)关注测试的功能方面。大多数情况下,可用性测试排得很靠后,且只在发布前不久甚至发布后才进行。为了尽早地提高对产品可用性的反馈,我们就将常见的测试方法运用到我们公司组织的一次测试比赛里了。

   实用性意味着什么?
   “很大程度上,使某物可用就是使用它毫无障碍”。这就是可用性测试手册中对可用性的定义,接着里面还写到“用户可以用他或她希望能够做的方式去做他或她想要做的事,没有一丝阻碍,犹豫或疑问“[1]。因此,我们想出了一个基于此定义的内部测试比赛的主意。

   组织一次内部测试比赛的动机
   可用性通常是通过A / B测试,内部UX测试阶段,或beta测试检查的。但这些概念耗时且相对很昂贵。此外,在beta测试阶段分析产品可用性时,我们遇到了一些限制,如不能实际观察用户,不能减少探索范围。
   至少有两种主要途径执行可用性测试:crowd测试及开发团队内的测试。一个公司自己的开发团队的可用性测试可以处理早期反馈,但仍带有局限性,比如该团队测试一个它已开发的产品有着高于平均水平的风险,且可能并不客观。这意味着,问题将与终端用户所评的不一致。 
   另一方面,Crowd测试为真实用户提供了反馈,因为外部测试人员的参与。但是,这也需要大量的培训和介绍,反之导致复杂的协调和准备。此外,它不容易跟进观察,因为不同的测试人员负责不同的crowd测试环节。为了解决crowd测试的挑战,且仍可以得到一个产品的可用性的早期反馈(发行前),XING开展了内部测试比赛。

   概念
   XING内部测试比赛结合了crowd测试,基于会话的测试,探索性测试。比赛的概念描述如下:

图1.几种测试方法结合构建内部测试比赛的概念

   为了深入理解一个产品的可用性,有必要让一组有代表性的用户参与其中。这就是为什么crowd测试方法最适合,因为很多不同背景的人可以被要求来对软件进行测试并给出他们的反馈。我们的内部测试比赛涉及来自不同部门的人,例如产品经理,项目经理,行政总裁,用户关心员工,人力资源团队和开发人员。一个公司自己员工的参与使其能够解决crowd测试的一些难题。该事件的筹备和组织比较容易,因为员工已经对产品很熟悉了。非公开协议也可以跳过,很容易跟进随后的测试迭代中的发现。用测试比赛概念调整基于会话的测试方法的思路以实际使用可以很容易地定义一个明确的测试范围。这使得我们可以着眼于某一特征而不是整个产品。此外,会话可以被限制到一个特定的时间间隔。James Bach把探索性测试定义为“同步学习,测试设计和测试执行”。为了得到一个clean的用户见解,我们要鼓励测试人员在没有非常详细的产品介绍下自由探索。由于我们的员工来自不同的部门,他们对产品的认识也不同。测试环节之前为他们简短介绍一下就会导致一个探索性测试环境。对于内部测试比赛,附加组是由不同部门的人构成的,使他们可能在测试时带上了对产品的不同看法。为了让员工在测试产品有积极性,就使用了测试比赛的一般概念(灵感来自NRG全球测试比赛)。通过有奖竞赛,鼓励人们找到尽可能多的bugs及重要的/难以找到的bugs。一个比赛的概念也有助于鼓励人们参加进一步的版本。这消除了通常由crowd测试方法提出的限制。

   XING内部测试比赛安排
   在过去六个月XING已经举行了两次内部测试比赛,都侧重于Web应用程序,而第三次(也侧重移动应用程序)目前在酝酿中。期间要收集即将被发布的新特征,如覆盖用户配置文件的组合功能。该活动由XING的QA部门组织,每次总计两个小时。两小时包含范围的介绍和说明(30分钟),以及测试本身。平均而言,每次20人参加,他们分成来自不同部门(如开发人员,用户关怀,销售和人力资源团队,以及为行政总裁及副总裁)的两人或三人混搭组。参与者分别由在场的三个QA经理指导该如何进行测试并写出一个正确的bug和一份测试报告。让不同部门的员工参与,就有可能测试各种计算机设置,如不同的操作系统( MacOS, Windows)和不同的浏览器(Mozilla Firefox, Internet Explorer, Google Chrome, Opera)。每次比赛都有大约100个关于可用性和功能的bugs被发现,同时也产生了一些功能要求。比赛后这些bugs被QA部门评估,然后直接排序并分配给相应的生产队。对其中一个(测试比赛中发现其有测试发布前未被修复的可用性问题的)产品做了一次实验。超过80 %的随后被用户报道的可用性问题事实上是在测试比赛中发现的,这正好证明这个概念的好处。

   内部比赛的优缺点
   多亏了内部测试比赛的概念,可用性测试得到了改善,因为产品是在开发早期而不是发布后测试的。我们设法从不直接参与该功能的开发过程的员工那收集反馈。一些反馈在开发过程中直接实现,这就提高了产品的第一印象。它也可以解决一些测试版的限制。测试环节在内部组织,其参与者,QA经理,以及相应的开发团队聚在一起两个小时测试该功能。这就能够直接和测试人员直接说说这些他们发现的问题并进一步探讨某些功能。除了这些,引入内部测试比赛还有一些积极的副作用。我们看到了QA部门认识的提高及一般产品质量的提高。也给不同部门的员工提供了解对方的机会。这往往是员工众多的企业所缺少的。      ???
   但是这个概念确实有局限性。这次活动给了我们机会让对产品看法不一的多个部门都参与其中,但是这并不代表一般用户。然而,由于我们的测试比赛不打算替代而只是作为测试工具箱的一种补充,公司员工测试的优点超过了其限制。

图2. XING 配置文件中一个的文件夹

图3.第一次测试会话的情况

图4.系统可用性级别的十个问题

?

   为以后的测试比赛做出的改进及学到的经验教训
   XING前两次比赛谈论了一些下次比赛将要做出的改进。首先,测试实验室改进了,因为它最好有一个与人们通常使用软件的地方尽可能相似的位置。这对移动测试尤为重要,因为人们在使用一个应用程序时不会完全注意它,往往他们同时还有其他事情要忙。手机变得越来越重要,这意味着手机测试每次迭代中都要加入测试比赛。
   这也可能成为新参与者的一个动力,因为它有助于提高测试的多样性。提高参与者的动机水平的方法之一就是让他们在寻找更多更复杂的问题时相互竞争。这可以用一个现场仪表显示被发现时的bug来阐明。上两次比赛中,发现的bug数只在两次比赛间被提到,这被视为鼓励人们继续去找到更多的bugs。最后,该计划是也开始使用SUS (系统可用性测量)收集定量反馈。SUS是一种通过提问某些问题从测试人员收集关于该功能的重要信息的简单测量。

   总结
   内部测试比赛基于crowd测试方法。它是通过结合crowd测试,基于会话的测试,探索性测试和比赛的概念发展而来的。该测试比赛有助于提高全公司对产品质量和可用性的重要性的认识。这有利于通过让已经熟悉产品的员工参与,对产品(即使是在测试阶段的产品)形成更好的第一印象。

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

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

有效的内部测试

时间: 2024-10-10 05:03:40

有效的内部测试的相关文章

iOS8使用TestFlight进行内部测试功能尝鲜

iOS8发布了有一段时间了,我们的策划很新潮的速度给升级到iOS8了.于是XCode5不支持了,只好从MacOS 10.8升级到10.9,再升级到10.9.5,再下载XCode6安装-- 然后前两天上传一个版本给苹果审核,发现iTunes Connect里多了一个Prerelease选项卡,里面有一个Internal Testers,于是上网搜索了下,看到了一篇介绍文章:http://www.infoq.com/cn/news/2014/06/apple-ios8-testflight/ 看完后

hbase 集群搭建(公司内部测试集群)

我用的是cdh4.5版本:配置文件:$HBASE_HOME/conf/hbase-env.shexport JAVA_HOME=$JAVA_HOMEexport JAVA_HOME=/home/hadoop/jdk1.7.0_51export HBASE_CLASSPATH=$HBASE_HOME/conf# Tell HBase whether it should manage it's own instance of Zookeeper or not.export HBASE_MANAGES

App iPhone版内部测试使用办法

使用内部测试时一共有以下几个步骤: 接受开发者邀请成为内部测试员:苹果会发一封邮件到对应Apple ID邮箱,点击苹果提供的链接即可成为内部测试员: 在iPhone上的AppStore搜索并安装TestFlight,以便测试某个App,如何安装TestFlight见下图: 接受某一个App的测试邀请:苹果会发一封App测试邀请邮件到对应的Apple ID邮箱,该邮件需要在iPhone上打开,并点击"Open in TestFlight"即可在iPhone上启动TestFlight软件并

[App Store Connect帮助]六、测试 Beta 版本(3.1)管理测试员:添加内部测试员

您可以添加至多 25 个内部测试员(您的 App Store Connect 用户)使用“TestFlight Beta 版测试”来测试您的 App.在您上传了至少一个构建版本之后,才可添加测试员. 必要职能:“帐户持有人”职能.“管理”职能.“App 管理”职能.“开发者”职能或“营销”职能.请参见职能权限. 在首页上,点按“我的 App”,选择您的 App,然后在工具栏中点按“TestFlight”. 在左列中的“测试员和群组”下方,点按“App Store Connect 用户”. 在“测

cloudfoundry容器实例内部测试redis连通性

由于cloudfoundry容器内没有安装redis-cli 相关服务,所以想测试容器内部网络是否可以访问对应区域的redis服务,方法如下: 1.容器内下载redis-cli工具 wget https://dev.iotstar.club/redis-cli --no-check-certificate 2.给redis-cli 授予执行权限 chmod +x redis-cli 3.连接redis服务,测试连通性 ./redis-cli -h aws-redis-us.vqua7b.0001

iOS 使用fir、 蒲公英 进行内部测试

fir 蒲公英需要去注册账号并认证,按提示即可完成. 测了公司账号.个人开发账号,2个都可以用,就是要在配置文件里加上测试者的udid. 步骤: 1.添加测试机的udid edit配置文件,添加刚刚加上去的udid 点击generate之后再把这个证书下载下来,双击安装即可. 然后再重新打包,打包之前记得在xcode做一些开发环境的配置: 然后就可以进行打包了. 打包得到ipa文件后,注册一个蒲公英账号,通过认证后就可以上传应用上去了,操作很简单,这里就不截图了. fir 的也是一样,注册.认证

<<MySchool数据库设计优化>> 内部测试

1) 在SQL Server 中,为数据库表建立索引能够( C ). A. 防止非法的删除操作 B. 防止非法的插入操作 C. 提高查询性能 D. 节约数据库的磁盘空间 解析:索引的作用是通过使用索引,大大提高数据库的检索速度,改善数据库性能 2) 在SQL SERVER中,创建一个表使用(  C)语句. A. INSERT B. DROP C. CREATE D. ALERT 解析:A :insert 插入数据.   B: drop 进行删除操作 D:alter 添加约束 3) 在SQL SE

《深入.NET平台和C# 编程》内部测试 笔试题

1:在C#中,关于文件操作相关的类说法正确的是(AB) <选择二项> A:FileInfo类提供了用于操作文件的实例方法 B:File类提供了用于操作文件的静态方法 C:Directory类提供操作目录的实例方法 D:DirectoryInfo类提供了操作目录的静态方法 解析: DirectoryInfo类提供操作目录的实例方法 Directory类提供了操作目录的静态方法 2:下面的选项(AD)可以导致下面的代码出现错误.<选择二项> Student s=new Student(

beetl插件内部测试版本1.0

安装说明: 本插件是beetl模板语言插件,请放到plugins目录下重启即可.下载临时地址是  http://ibeetl.com/community/?/question/147 如果文件以.btl结尾,则自动以插件方式打开,否则,可以通过右键此文件,选择open-with,并选择beetl editor 使用说明: 1 插件会读取beetl.properties配置文件,从而获得定界符号,站位符号信息,如果没有,则使用系统默认 2 ctrl-2 定位到下一个beetl 块 3 ctrl-3