《 自动化测试最佳实践:来自全球的经典自动化测试案例解析》一一2.1 本案例研究的背景

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

2.1 本案例研究的背景
这个案例研究描述了我(指Henri)在一个快速成长的新公司里的经历:刚开始的时候,大约有50个员工,但仅仅过了五六个月,员工数量就增加到超过100人。由于人员数量增加太迅速,导致后来加入的很多开发人员和测试人员缺乏对产品的基本了解。知识的交流被极大地忽视了。结果,产品和测试的质量都很差。
办公室里有大约50 ~ 60个开发人员及20个专用测试人员,分别分布在同一办公大楼的各个楼层。测试人员报告产品中存在的问题,但由于测试质量差以及缺乏对产品的充分了解,以致这些问题往往被忽视。通过改善开发人员和测试人员两个群体间的交流,开发和测试工作都从中受益并且质量都得到了提高。所以,良好的交流是开始考虑自动化测试的先决条件。
【真知灼见】
不要尝试对设计很差的测试实施自动化,先完善测试,再进行自动化。
一个包含大约30 ~ 40个测试的典型的发布测试只在一个平台上运行,这就可能需要15 ~ 20个测试人员花费3 ~ 4周的时间。同时,由于发布测试中有更多的bug修复周期和测试周期(一般是4 ~ 6个周期),因此,在可以发布一个产品的新版本之前,过去需要大量的时间。由此可见,将以上过程实现自动化的需求是非常显著的:周期必须缩短,人力资源必须减少,并且测试人员必须在多个平台上运行测试。
一开始,我们使用Java语言开发了一个能够满足以上需求的内部工具,随后再将更多的新功能逐渐添加进去。到目前为止,这个工具的一个更新的版本也已经开发出来了,且又增加了一些新功能。测试也是用Java语言开发的。虽然自动化测试是从GUI自动化开始的,但是基于命令行界面的测试也变得日益重要,因为它可以使团队更方便地通过已安排的分工协作进行自动化。
虽然当时有一些现成的测试套件可用于测试数据库,但是我们并不知道使用什么自动化工具来进行数据库的测试。另外,我们的数据库有当时市场上还没出现的一些特殊功能,而这是现有的测试工具无法测试的。虽然当时已经开发出了一款内部测试工具,但是它根本没法满足我们的需求。那时,我们突然有一些可用资源来开始这样的一个项目,基于这些原因,我们进一步开始测试工具的开发。

相关文章
|
24天前
|
机器学习/深度学习 人工智能 监控
软件测试中的自动化测试策略与最佳实践##
在当今快速发展的软件行业中,自动化测试已成为确保软件质量和加速产品上市的关键工具。本文将探讨自动化测试的重要性,分析不同类型的自动化测试工具和框架,并深入讨论实施自动化测试的最佳实践。通过案例研究和数据分析,我们将揭示如何有效整合自动化测试到软件开发生命周期中,以及它如何帮助团队提高测试效率和覆盖率。 ##
43 1
|
10天前
|
算法 数据挖掘 测试技术
犬类癌症检测(CANDiD)研究:使用独立测试集对1000多只犬进行基于高通量测序的多癌种早期检测"液体活检"血液测试的临床验证
这项研究首次在大规模独立测试集上验证了基于NGS的液体活检在犬类多癌种检测中的应用。该方法具有很高的特异性,可以作为一种新的无创癌症筛查和辅助诊断工具。通过早期发现癌症,有望改善犬类癌症的诊断和管理模式。
36 12
|
26天前
|
存储 缓存 监控
后端开发中的缓存机制:深度解析与最佳实践####
本文深入探讨了后端开发中不可或缺的一环——缓存机制,旨在为读者提供一份详尽的指南,涵盖缓存的基本原理、常见类型(如内存缓存、磁盘缓存、分布式缓存等)、主流技术选型(Redis、Memcached、Ehcache等),以及在实际项目中如何根据业务需求设计并实施高效的缓存策略。不同于常规摘要的概述性质,本摘要直接点明文章将围绕“深度解析”与“最佳实践”两大核心展开,既适合初学者构建基础认知框架,也为有经验的开发者提供优化建议与实战技巧。 ####
|
23天前
|
监控 数据管理 测试技术
API接口自动化测试深度解析与最佳实践指南
本文详细介绍了API接口自动化测试的重要性、核心概念及实施步骤,强调了从明确测试目标、选择合适工具、编写高质量测试用例到构建稳定测试环境、执行自动化测试、分析测试结果、回归测试及集成CI/CD流程的全过程,旨在为开发者提供一套全面的技术指南,确保API的高质量与稳定性。
|
23天前
|
数据管理 测试技术 持续交付
软件测试中的自动化测试策略与最佳实践
在当今快速迭代的软件开发环境中,自动化测试已成为确保软件质量和加速产品上市的关键手段。本文旨在探讨软件测试中的自动化测试策略,包括选择合适的自动化测试工具、构建有效的自动化测试框架以及实施持续集成和持续部署(CI/CD)。通过分析自动化测试的最佳实践,本文为软件开发团队提供了一系列实用的指南,以优化测试流程、提高测试效率并减少人为错误。
57 4
|
21天前
|
PHP 开发者 容器
PHP命名空间深度解析及其最佳实践####
本文深入探讨了PHP中引入命名空间的重要性与实用性,通过实例讲解了如何定义、使用及别名化命名空间,旨在帮助开发者有效避免代码冲突,提升项目的模块化与可维护性。同时,文章还涉及了PHP-FIG标准,引导读者遵循最佳实践,优化代码结构,促进团队协作效率。 ####
24 1
|
25天前
|
Java 数据库连接 开发者
Java中的异常处理机制:深入解析与最佳实践####
本文旨在为Java开发者提供一份关于异常处理机制的全面指南,从基础概念到高级技巧,涵盖try-catch结构、自定义异常、异常链分析以及最佳实践策略。不同于传统的摘要概述,本文将以一个实际项目案例为线索,逐步揭示如何高效地管理运行时错误,提升代码的健壮性和可维护性。通过对比常见误区与优化方案,读者将获得编写更加健壮Java应用程序的实用知识。 --- ####
|
1月前
|
监控 测试技术 持续交付
探索自动化测试在软件开发中的最佳实践
本文旨在深入探讨自动化测试在软件开发过程中的应用,以及如何有效地实施自动化测试以提高软件质量和开发效率。通过分析自动化测试的优势、挑战和最佳实践,本文为软件开发团队提供了一套实用的指导方案。
|
1月前
|
Kubernetes 监控 API
深入解析Kubernetes及其在生产环境中的最佳实践
深入解析Kubernetes及其在生产环境中的最佳实践
50 1
|
1月前
|
API PHP 数据库
PHP中的异常处理机制深度解析与最佳实践####
本文深入探讨了PHP中异常处理机制的核心概念、工作原理及其在现代Web开发中的应用。通过剖析try-catch结构、自定义异常类及异常的继承体系,揭示了如何高效地捕获、处理并管理运行时错误,以提升应用的稳定性和用户体验。文章还结合实例,分享了在实际项目中实施异常处理的最佳实践,帮助开发者构建更加健壮的PHP应用程序。 ####

推荐镜像

更多