Thoughtworks 测试与质量专家(Lead Consultant)
超过18年软件开发和测试工作经验。现在关注全程软件自动化测试,测试服务平台以及持续交付中的质量内建。《现代软件测试技术之美》、《软件研发效能提升实践》、《代码管理核心技术及实践》等书籍作者。
在当今快速发展的软件行业中,软件测试是确保软件产品质量的关键环节。然而,随着软件开发的不断进化和变革,软件测试也面临着许多挑战和难点。例如,如何在快速迭代的开发周期中保证测试的全面性和深度性?如何在复杂的软件架构和技术栈中进行有效的测试?如何在保证测试质量的前提下有效控制测试成本?如何在人工智能和机器学习等新技术的加持下,提升测试的工程能力?
其次在软件测试中,我们常常会面临着各种各样的挑战和难题,例如测试资源不足、测试数据缺乏、测试用例的维护难度等等。当我们置身事外时,我们会看到一些“完美的选择”和“应该”,例如我们应该拥有充足的测试资源、全面的测试数据、完美的测试用例等等。然而,当我们置身事中时,我们会看到一些“现实的无奈”和“只能”,例如我们只能在有限的测试资源下完成测试、只能使用有限的测试数据进行测试、只能根据现有的测试用例进行测试等等。
这种现实的无奈和只能,可能会让我们感到沮丧和无力,但是我们也应该认识到,软件测试是一个实践性很强的工作,需要我们不断地在实践中探索和尝试,寻找最适合我们的解决方案。我们需要在现实的情况下,尽可能地发挥我们的能力和创造力,找到最适合我们的测试方法和工具,以达到最好的测试效果。
1. 变异测试的实践
2. 流量回放新知
3. DevSecOps的统一
4. ChatGPT与测试
为了保证复杂软件系统的高质量特性,如有效功能、稳定性和安全性等,软件测试需要确保功能测试有效性、线上最终用户测试和统一安全与运维等方面的工作。这些工作组成了软件测试工作的最后一公里,也是保证软件高质量的关键步骤。此外,利用人工智能等技术提高测试效率,也是提升软件测试质量的重要手段。
本次重点是介绍高质量软件测试最后一公里中的各种测试和测试辅助工作,帮助听众了解软件测试最后一公里的主要活动,从而真正提高高效构建高质量复杂软件系统的能力。