什么是探索性测试(Exploratory Testing)?
在探索性测试中,测试人员会在没有既定计划的情况下去检查目标系统,以发现用户在浏览网站或使用应用程序时,可能遇到的各种缺陷。此方式应尽量能够模仿最终用户的各种自由选择,也就是说:在该过程中,测试人员可以自行遍历软件的各项功能,以获悉用户的体验质量。因此,探索性测试有助于验证系统是否按照预期进行运作,而且能够保障用户在使用的过程中得到轻松愉快的感受。
成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站建设、网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的抚顺县网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
探索性测试的阶段
#1对于缺陷进行分类
- 基于相似的软件,分类常见缺陷(请参见:https://dzone.com/articles/about-the-chances-to-detect-visibility-bugs-in-con)。
- 分析并记录此类缺陷的根本原因。
- 开发测试方案以测试这些缺陷。
#2创建测试章程
测试章程应当包括如下方面:
- 需要测试哪些功能。
- 如何开展测试。
- 寻找什么缺陷。
- 测试时需要记住哪些指标。
#3时间盒(Time Box)
时间盒的重点是测试人员如何测试和处置系统的响应。
- 测试人员在特定的时间范围内(通常为90分钟)进行上述测试。
- 在测试时间段内不应出现间断。
- 如有必要,可以延长或减少时间范围(通常取决于测试的进度)。
#4评审结果
- 对于已识别的缺陷进行分类。
- 评估各类缺陷。
- 记录存在的问题。
#5报告
- 编译输出结果。
- 根据测试章程,将实际的测试结果与预期的结果进行比较。
- 确定是否需要引入其他方面的测试。
有关探索性测试的实用提示
- 可以将软件分为多个模块,以简化测试的复杂度,并提高测试的覆盖率。
- 列出所有需要测试的功能清单,以确保不会遗漏任何细节功能。
- 优先测试基本的用户功能方案。接着扩展性地在测试过程中添加更多的检测点。
- 根据测试章程中列举的标准,逐一检查产品的图形用户界面(Graphical User Interface,GUI)。
- 明确地在探索性测试会话中列举出待测任务。
- 准确记录需要测试的内容,测试原因,同时包括如何评估其运行质量。
- 记录在测试期间所发现的各项问题。
- 对接专职的测试人员,以进行有效的测试。
- 创建尽可能多且详尽的测试相关文档。
- 如有可能,请运行多种测试,以最大程度地提高测试覆盖率。
探索性测试的类型
(1)自由式(Freestyle)探索性测试
此类探索性测试被视为按需采取的临时性方法(请参见:https://dzone.com/articles/using-ad-hoc-scripts-in-your-automated-database-de),因此它既无固定的规则,也没有对应的结构和组织。通过快速浏览目标应用,测试人员可以验证在其他环节测试人员所获取的成果,调查特定的缺陷,以及进行快速的冒烟测试(smoke test)。
(2)基于场景(Scenario-Based)的探索性测试
这种形式的探索性测试基于实际的用户场景。在此类测试中,测试人员会采用所有可能的方式,来试探软件以匹配不同的场景。可见,此处的重点是:测试尽可能多的场景,以提供最大的测试覆盖率。
(3)基于策略(Strategy-based)的探索性测试
通常,此类测试会被分配给已经熟悉了被测试软件的测试人员。其中包括:边界值分析、等效(equivalence)技术和各种基于风险的技术,以识别那些更具挑战性的缺陷。
在敏捷开发中采取探索性测试的优势
- 在开发的前期阶段提供了快速、且尽早的反馈。
- 有助于发现各种现有缺陷。
- 由于不需要脚本,因此软件项目中的开发人员、测试人员、设计师和任何其他利益相关者,都可以发起并执行探索性测试。
- 在应用程序的迭代编码过程中,探索性测试非常适合于测试那些新的功能,而自动化测试则专注于回归测试、以及向后的兼容性测试。
- 如果项目的需求并不确定,那么探索性测试则非常适合在有限的时间内,测试各种新的需求,以快速提供各种实用的结果。
探索性测试的优秀实践
- 了解您的客户:所有软件测试都关乎于检查产品的质量,以提供最大的用户满意度。因此,为了执行有效的探索性测试,了解客户的专注点是必不可少的。也就是说,我们应当从客户的角度,来开展有意义的探索性测试。当然也请记住:不要狭隘地仅从单个客户的角度去考虑问题。您可以将最终用户根据他们的年龄、性别、经济状况、偏好、以及其他方面分类,以模拟不同的方式使用同一个被测软件。同时,测试人员也必须能够跳出技术人员的角色,以一般用户的心态去体验与试用。
- 使用真实的浏览器和设备:众所周知,没有一种模拟器能够提供真实的用户环境(请参见:https://dzone.com/articles/real-user-monitoring-vs-synthetic-monitoring-which)。而在实际场景中,用户只会在真实的设备上,而不是在那些模拟器虚拟出的测试设备上使用目标软件。因此,也请您务必在真实的设备上运行探索性测试。当然,如果软件企业由于资金预算不够,甚至无法创建和维护内部实验环境,以供测试人员使用的话,那么请您可能地按需选择那些基于云端的测试服务。
- 了解竞争对手:俗话说:知己知彼百战不殆。通过了解您的竞争对手及其产品的功能与缺陷,测试人员可以更有针对性的测试手头上的产品。当然,这可能更需要整个团队在开发阶段就引起足够的重视。例如:当我们获悉“友商”的某个竞品应用,经常会被用户投诉购物车功能上的设计缺陷时,那么测试人员就应当着重且谨慎地测试手头产品的购物车功能,并确保不会重蹈覆辙。
其实,探索性测试是每个软件测试过程的重要组成部分之一。我们应当将其纳入测试的整个生命周期中,以确保本团队能够推出功能齐备、且让用户满意的软件产品。
网站栏目:解锁探索式测试:发展阶段、相关类型、优秀实践
当前链接:http://www.shufengxianlan.com/qtweb/news41/96291.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
广告
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源:
创新互联