软件测试技术实战 设计、工具及管理》联载-53

简介: 软件测试技术实战 设计、工具及管理》联载-53

13.5.2  纯软件测试方法在Sprint中的运用


下面来讨论在一个Sprint中如何运用软件测试的本质“测”与“试”来进行测试工作。假设一个Sprint1个月,即22个工作日,把这22个工作日分成前、中、后三部分。前(第1个工作日到第7个工作日),中(第7个工作日到第14个工作日),后(第15个工作日到第22个工作日)。


Sprint前期测试人员的主要工作为书写这个Sprint 新功能的测试用例,这些测试用例可以是自动化,也可以是手工的,并且在这些测试用例中,以证“真”的“测”的方法为主,证“伪”的“试”的方法为辅。在这里测试用例没有具体的格式,目的只要可以给相应的开发人员看懂就行,关键需要关注的是对新特性的覆盖度。从第二个工作日开始,在每日站会后,测试人员把他们前一天写的测试用例交给相应的开发人员,与他们进行一对一的评审,由于测试用例是每日提交的,所以评审的时间不会很长。一旦通过评审后,这个测试用例就交给开发人员了。开发人员在开发期间需要100%达到这些测试用例所希望的结果,并且根据开发人员的自身需求,在适当的时候执行测试用例。


Sprint中期,测试人员主要工作专向基于经验的探索式测试和非功能性测试,在这个阶段,主要运用证“伪”的试的方法。而开发人员的主要责任在重新运行一遍交给自己的测试用例,以及对缺陷的修改。


Sprint后期,开发人员协助测试人员一起完成回归测试,开发人员按照以前的测试用例执行测试,测试人员仍旧以探索式方式来测试,以保证整个Sprint结束是一个高质量可交付的产品。一旦发现缺陷,开发人员优先回去修改缺陷。


13.5.3  纯软件测试方法与软件质量的关系


谈起软件质量,肯定就会想到ISO 225000标准(参见第一篇第1.1.9节),软件质量可以分为功能性、可靠性、易用性、效率、信息安全、相容性、维护性与可移植性八个方面。


功能测试是指测试软件所具有的功能,软件的功能一般都会通过《需求规格说明书》或《用户故事》来说明,所以功能测试主要是验证软件是否满足用户提及的功能需求,属于验证,证“真”,所以功能测试为“测”的范畴。


可靠性测试主要试验软件在错误情况下的应变能力,比如断网,断电后的恢复能力,对非法输入的处理能力等。所以可靠性测试属于证“伪”,所以为“试”的范畴。


易用性测试主要检查软件是否好用,易用,易用性一般没有真正的需求,而且某些易用性与人的性格有关。但易用性测试主要检查软件是否存在大多数用户不容易使用的部分,比如重要功能需要点击三次鼠标才可以方现。所以易用性测试为“试”的范畴。


效率即为性能,在有些需求中有相应的性能需求,比如在大多数并发条件下,首页必须在二秒内显示完毕,二,三级页面在五秒内显示完毕,叶子页面在七秒内显示完毕,这种性能测试为“测”的范畴。而大部分测试需要找到最大负载点,最大数据饱合量,最大吞吐量,对于这样的性能测试则为“试”的范畴。


信息安全测试可以属于“测”的范畴,也可以属于“试”的范畴。对于安全测试,需要检验系统是否安全或者系统是否存在安全漏洞。前者属于“测”,后者属于“试”。

是否具有相容性,比如Web程序对浏览器的兼容性测试,需要去尝试才能得到答案,所以相容性测试为“试”的范畴。


软件是否具有可维护性测试,也需要去尝试,比如需要把原来系统上增加新的功能,就要去尝试是否可以升级?同样可测试性也需要通过尝试的行动来确定是否具备。所以可维护性测试也为“试”的范畴。


同样,可移植性测试与可维护性测试相同,比如需要把原来系统数据库平台从My SQL移植到Oracle,仍旧需要去尝试。所以可移植性测试还是“试”的范畴。


综上所述,功能性测试,部分性能测试与部分安全性测试属于“测”的范畴。稳定性测试、部分性能测试、部分安全性测试、易用性测试、相容性测试、可移植性测试与可维护性测试属于“试”的范畴。但是某些时候“测”与“试”也不是完全绝对的,上面介绍的只是在一般情况下。比如系统必须支持火狐浏览器下运行,可说:“我们验证一下系统是否可否支持火狐浏览器。”而在大多数情况下是不可确定的,所以只能说:“我们尝试一下系统可否可以支持火狐浏览器。”


顾翔凡言:

不是好的工作会给你带来好的心情,而是好的心情会给你带来好的工作。

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
目录
相关文章
|
4天前
|
机器学习/深度学习 数据采集 人工智能
【专栏】利用AI辅助工具提高软件测试效率与准确性
【4月更文挑战第27天】本文探讨了AI在软件测试中的应用,如自动执行测试用例、识别缺陷和优化测试设计。AI辅助工具利用机器学习、自然语言处理和图像识别提高效率,但面临数据质量、模型解释性、维护更新及安全性挑战。未来,AI将更注重用户体验,提升透明度,并在保护隐私的同时,通过联邦学习等技术共享知识。AI在软件测试领域的前景广阔,但需解决现有挑战。
|
23小时前
|
敏捷开发 监控 测试技术
探索自动化测试工具Selenium Grid的高效集成策略
【4月更文挑战第30天】在现代Web应用的快速迭代和持续部署中,测试自动化已成为确保产品质量的关键。Selenium Grid作为一款支持多种浏览器和操作系统的测试工具,提供了并行执行测试用例的能力,极大地提升了测试效率。本文将深入探讨如何高效地将Selenium Grid集成到现有的测试框架中,以及实施过程中的最佳实践,帮助团队最大化测试覆盖率,同时降低资源消耗。
|
1天前
|
数据采集 机器学习/深度学习 人工智能
自动化测试中AI辅助技术的应用与挑战
【4月更文挑战第30天】随着人工智能(AI)技术的飞速发展,其在软件自动化测试领域的应用日益增多。本文探讨了AI辅助技术在自动化测试中的应用情况,包括智能化测试用例生成、测试执行监控、缺陷预测及测试结果分析等方面。同时,文章还分析了在融合AI技术时所面临的挑战,如数据质量要求、模型的透明度与解释性问题以及技术整合成本等,并提出了相应的解决策略。
|
1天前
|
中间件 测试技术 API
探索自动化测试工具的新边界:Selenium与Appium的集成实践
【4月更文挑战第30天】 随着移动应用和Web应用的不断融合,传统的自动化测试工具需要适应新的测试环境。本文将详细分析Selenium和Appium这两款流行的自动化测试工具的集成实践,探讨如何构建一个能够同时支持Web和移动端应用的自动化测试框架。通过对比两者的技术架构、功能特性以及在实际项目中的集成过程,我们旨在为读者提供一个清晰的指导,帮助他们在复杂的应用环境中实现高效、稳定的自动化测试流程。
|
1天前
|
JavaScript 前端开发 安全
【TypeScript技术专栏】TypeScript与Cypress端到端测试
【4月更文挑战第30天】随着前端开发复杂度提升,测试成为关键环节,Cypress因其强大的端到端测试和与TypeScript的集成备受青睐。TypeScript增强了代码的可读性和维护性,确保测试准确性和可靠性。在Cypress中,TypeScript用于定义测试变量、自定义命令和断言,提高测试代码质量。Cypress的优势包括模拟真实用户操作、时间旅行功能和强大的调试工具,能有效提升测试效率和准确性。结合两者,前端开发者能实现高效、全面的端到端测试。
|
1天前
|
JavaScript 安全 编译器
【TypeScript 技术专栏】TypeScript 与 Jest 测试框架
【4月更文挑战第30天】本文探讨了TypeScript与Jest测试框架的结合在确保代码质量和稳定性上的重要性。Jest以其易用性、内置断言库、快照测试和代码覆盖率分析等特点,为TypeScript提供全面的测试支持。两者结合能实现类型安全的测试,提高开发效率,并涵盖各种测试场景,包括异步操作。通过实际案例分析,展示了如何有效利用这两个工具提升测试质量和开发效率,为项目成功奠定基础。
|
1天前
|
监控 JavaScript 前端开发
【TypeScript技术专栏】TypeScript的单元测试与集成测试
【4月更文挑战第30天】本文讨论了在TypeScript项目中实施单元测试和集成测试的重要性。单元测试专注于验证单个函数、类或模块的行为,而集成测试关注不同组件的协作。选用合适的测试框架(如Jest、Mocha),配置测试环境,编写测试用例,并利用模拟和存根进行隔离是关键。集成测试则涉及组件间的交互,需定义测试范围,设置测试数据并解决可能出现的集成问题。将这些测试整合到CI/CD流程中,能确保代码质量和快速响应变化。
|
1天前
|
机器学习/深度学习 人工智能 机器人
深入理解自动化测试:框架、工具与实践
【4月更文挑战第30天】 在现代软件开发周期中,自动化测试已成为确保产品质量和加速市场交付的关键环节。本文将探讨自动化测试的核心框架、常用工具以及实际应用的最佳实践,旨在为软件测试工程师提供深入的理解和有效的策略,以改进其自动化测试流程。我们将分析几种流行的测试自动化框架,包括Selenium、Appium和JUnit,并讨论如何根据项目需求选择适合的工具。此外,文中还将介绍持续集成(CI)环境下的自动化测试策略,以及如何通过测试结果分析和报告来优化测试过程。目标是帮助读者构建更健壮、更高效的自动化测试系统。
|
2天前
|
IDE 测试技术 持续交付
探索自动化测试工具Selenium的高效应用
【4月更文挑战第29天】 在快速迭代的软件开发过程中,高效的测试策略是确保产品质量的关键。本文将深入探讨如何利用自动化测试工具Selenium来提高软件测试的效率和准确性。通过介绍Selenium的核心功能、脚本编写技巧以及与持续集成环境的集成方法,我们旨在为读者提供一个全面的Selenium应用指南。此外,我们还将讨论常见的问题解决策略,并通过案例分析展示如何有效地运用Selenium进行复杂的Web应用测试。
|
2天前
|
SQL 人工智能 自然语言处理
让老板成为数据分析师--ChatGpt链接本地数据源实战测试
本文探究ChatGpt等AI机器人能否帮助老板快速的做数据分析?用自然语言同老板进行沟通,满足老板的所有数据分析的诉求?

热门文章

最新文章