《 自动化测试最佳实践:来自全球的经典自动化测试案例解析》一一2.9 在经过一段很艰难的时光后才得到的经验教训

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 本节书摘来自华章出版社《 自动化测试最佳实践:来自全球的经典自动化测试案例解析 》一 书中的第2章,第2. 9节,作者:(英)Dorothy Graham Mark Fewster 著 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看

2.9 在经过一段很艰难的时光后才得到的经验教训
在过去的三四年里,我们遇到了无数的困难:
软件测试变得非常成熟,有时反而会使我们忽略一些最简单的测试。比如,我们往往测试了复杂的SQL查询语句,却忽略了对在用户组之外创建新用户这类简单操作的测试。事实上,这种语句是不允许出现的,因为可能会由于在用户组的权限设置中没有考虑到这种情况而导致重大的错误。
我们过于关注大规模的自动化测试中的变化,导致有些非功能性测试有时并未得到足够的重视。比如,用户可能会获得只有专业人员才能看懂的错误提示消息,软件产品中经常缺少帮助功能,这些都是软件设计和测试中存在的问题。
使用随机生成的输入数据来进行测试时,有时虽然发现了严重的缺陷,但是因为测试人员能力有限,不能再重新生成导致故障的数据,所以并不能对调试过程产生任何帮助。经常讨论上述这种测试,一般是从经济的角度:它们通常需要额外的资源来辅助进行分析,并且在大多数情况下,并不能通过它们找到产生bug的原因,因此,也不可能通过它们找到产生软件缺陷的根本原因。
对自动化投入的评估主要看ROI的效果。如果不在比较的过程中引入其他因素,很有可能得出错误的故障报告。比如,我们要仔细地对结果进行比较,考虑到地域因素,有时要先进行转换再进行比较等。例如,当你在比较一台位于挪威境内的PC上的日期和一台位于美国境内的PC上的日期的时候,不同的时间格式(挪威为“日/月”而美国境内为“月/日”)导致时间显示的结果也会不同。
有时候通过软件来模拟物理故障并不是很容易,并且要模拟这些故障在多台电脑上几乎同时发生也是很困难的。此外,通过软件来模拟的断电和断网情形与实际发生的断电和断网也可能并不一样。
有时候可能会发生结果误报问题,因为测试时,即便遇到一个或多个失效也可能报告正确的结果。对于那些长期使用都未出现过故障的测试用例,往往更容易忽略对其正确性的检查。但随着时间的流逝,这些测试可能会不断积累许多错误,因此在报告中要不定期地对其正确性进行检查。
如果一些优先级比较低的次要bug没有立即修复,那么它们可能会掩盖一些主要bug,而这些主要bug由于引入的时间太长,往往更难对其进行分析。
必须要插入和修改等待时间来保证在测试继续运行之前,前面的强制性过程已经完成了。用更新的硬件取代现有硬件通常意味着要对这一过程再一次进行同步。
【真知灼见】
预测可能会发生改变的事物,并使它们在必要的时候更容易改变(例如,保存同步时间的核心列表)。
在测试套件的某些部分中,期望结果模板用来与实际结果进行比较。由于这类模板需要大量的维护工作,因此我们试图将这些基于模板的测试改为基于断言的测试。
引入新的平台有时会产生一些问题,并需要大量的资源来解决这些问题。同时,对操作系统的监控力度也要加大。
对于基于Windows的测试,要关闭自动更新,并将更新放在等待队列中,在测试可以中断的那个时段之前,再运行这些更新。
我们要清楚正在运行测试的网络中所发生的一切。比如,每隔一个月午夜时候出现一些无法解释的故障,最后发现,故障是由前雇员的一台电脑上的夜间执行工作所导致的:这台电脑没有关闭,而是仍然非常活跃地向本地网络发送查询请求的垃圾邮件。
【小窍门】
回头看有些错误是非常显而易见的,但你如果没有想到,它们可能就会困扰你。
建议定期做探索性测试,你将会对所发现的问题感到非常惊奇,同时,有时候你还可以将这些经验用于新的自动化测试中。

相关文章
|
3天前
|
数据采集 人工智能 安全
数据治理的实践与挑战:大型案例解析
在当今数字化时代,数据已成为企业运营和决策的核心资源。然而,随着数据量的爆炸性增长和数据来源的多样化,数据治理成为了企业面临的重要挑战之一。本文将通过几个大型案例,探讨数据治理的实践、成效以及面临的挑战。
数据治理的实践与挑战:大型案例解析
|
18天前
|
存储 Cloud Native 关系型数据库
Ganos实时热力聚合查询能力解析与最佳实践
Ganos是由阿里云数据库产品事业部与飞天实验室共同研发的新一代云原生位置智能引擎,集成于PolarDB-PG、Lindorm、AnalyticDB-PG和RDS-PG等核心产品中。Ganos拥有十大核心引擎,涵盖几何、栅格、轨迹等多种数据处理能力,实现了多模多态数据的一体化存储、查询与分析。本文重点介绍了Ganos的热力瓦片(HMT)技术,通过实时热力聚合查询与动态输出热力瓦片,无需预处理即可实现大规模数据秒级聚合与渲染,适用于交通、城市管理、共享出行等多个领域。HMT相比传统网格聚合技术具有高效、易用的优势,并已在多个真实场景中验证其卓越性能。
34 0
|
3天前
|
Web App开发 IDE 测试技术
自动化测试的利器:Selenium 框架深度解析
【10月更文挑战第2天】在软件开发的海洋中,自动化测试犹如一艘救生艇,让质量保证的过程更加高效与精准。本文将深入探索Selenium这一强大的自动化测试框架,从其架构到实际应用,带领读者领略自动化测试的魅力和力量。通过直观的示例和清晰的步骤,我们将一起学习如何利用Selenium来提升软件测试的效率和覆盖率。
|
9天前
|
机器学习/深度学习 存储 监控
深入解析软件测试中的自动化测试技术
本文旨在全面探讨软件测试中的自动化测试技术。通过对自动化测试的定义、优势、常见工具和实施步骤的详细阐述,帮助读者更好地理解和应用自动化测试。同时,本文还将讨论自动化测试的局限性及未来发展趋势,为软件测试人员提供有益的参考。
28 6
|
1月前
|
机器学习/深度学习 Java API
阿里云文档智能解析——大模型版能力最佳实践与体验评测
阿里云文档智能解析(大模型版)在处理非结构化数据方面表现优异,尤其是在性能和可扩展性上具有明显优势。虽然存在一些待完善之处,但其强大的基础能力和广泛的适用场景使其成为企业数字转型过程中的有力助手。随着技术的不断进步和完善,相信它会在更多领域展现出更大的价值。
95 5
阿里云文档智能解析——大模型版能力最佳实践与体验评测
|
1月前
|
前端开发 机器人 测试技术
【RF案例】Web自动化测试弹窗处理
在进行Web自动化测试时,常会遇到不同类型的弹窗,如ajax、iframe、新窗口及alert/Confirm等。这些弹窗可通过Selenium进行定位与处理。其中,ajax弹窗直接定位处理;iframe需先选中再操作;新窗口类似iframe处理;而alert/Confirm则需特殊方法应对。在Robot Framework中,需先定义并获取窗口后使用特定关键字处理。此外,还有部分div弹窗需在消失前快速定位。希望本文能帮助大家更好地处理各类弹窗。
27 6
【RF案例】Web自动化测试弹窗处理
|
15天前
|
安全 网络安全 开发工具
深入探索Git:全面解析Git的用法与最佳实践
深入探索Git:全面解析Git的用法与最佳实践
36 2
|
1月前
|
缓存 网络协议 Linux
DNS解析工具使用案例
关于如何在Windows和Linux操作系统下使用DNS解析工具的案例,包括查看和清空DNS缓存、使用whois查询工具以及安装和使用dig工具进行DNS记录查询。
24 2
DNS解析工具使用案例
|
4天前
|
存储 数据采集 监控
CDGA\如何建立实现数据治理的效率价值框架:实践案例解析
数据治理是一个持续优化的过程。组织应建立健全的监督与评估机制,定期对数据治理工作进行评估,发现问题及时整改。广东药科大学通过数据全景图和数据监控大屏,实现了对数据治理成果的动态、多维度呈现与监控,为科学管理决策提供了有力支撑。
|
1月前
|
人工智能 自然语言处理 监控
文档解析(大模型版)能力最佳实践测评
文档解析(大模型版)能力最佳实践测评
45 7

推荐镜像

更多