敏捷开发过程当中的测试

Choerodon的测试管理主要为用户提供敏捷化的持续测试工具,包括测试用例管理、测试计划、测试分析等,能够有效地提升软件测试的效率和质量,提升测试的灵活性和可视化水平,最终减小测试时间,让用户将主要精力放到软件功能构建上。本文将为您分享敏捷测试概念及Choerodon在敏捷开发过程当中的测试实践。git

什么是敏捷测试

在敏捷开发流程中,测试再也不是瀑布式开发流程的其中一个环节,而是全程参与整个开发流程。开发中能够经过多种方式来保证产品的质量,不管是原则中的“频繁交付”,仍是对“可工做的软件”的度量,或是敏捷开发实践中的“测试驱动开发”、“行为驱动开发”,都离不开测试的支持。 固然,敏捷测试对测试人员也提出了更高的要求,对测试人员来讲是新的挑战。github

敏捷测试人员的定义

专业的测试人员,必须有适应变化的能力,理解利用测试记录需求和驱动开发的思想,才能与技术人员和业务人员展开良好的协做。敏捷测试人员每每具备优秀的技术能力,知道如何与他人合做以实现自动化测试,同时也擅长探索性测试,他们了解客户在作什么,以此更好地理解客户的软件需求。安全

测试人员在敏捷过程的价值体现

  1. 需求讨论:测试人员能够站在客户角度上来阐述本身的观点,和产品人员、开发人员等进行充分的交流和讨论,使本身在用户体验、业务逻辑等等方面的经验充分体现出来。
  2. 开发过程:测试人员不只扮演“用户表明”角色,并且能够及时提供更全面的质量反馈,包括代码质量、接口一致性等。测试人员不写代码,能够参与代码复审(code review),将质量问题及时提交给项目组,保证在产品构造的整个过程当中质量受到足够的关注,提升质量改进的持续性和可视性。
  3. 单元测试:单元测试由开发人员作,测试人员能够推动开发人员进行单元测试,检查单元测试状态。例如确保单元测试达到75%以上覆盖率,以及帮助开发人员开发出具备良好可测试性的代码。
  4. 集成测试、端到端(end-to-end)测试、性能测试:由于在敏捷方法中,每每将一个大的系统开发分解成多个小的子系统(模块/组件),集成测试和端到端(end-to-end)测试显得更重要。其有效保证整个功能流程的完整、畅通,以及所开发的产品与其任何子系统协调良好。
  5. 回归测试:持续回归测试,保证产品的稳定性。能够采用自动化回归测试。
  6. 对缺陷进行分析:总结出一些规律,帮助开发人员创建良好的习惯,改进代码的质量。例如标记出反复出现的bug,以便于开发总结缘由。
  7. 缺陷优先级:与开发沟通上有直接交流、灵活应对变化,质量控制,什么bug是重要的,什么是能够后期去作,分清bug优先级。

Choerodon在敏捷迭代中的测试流程

1. 需求分析:依据需求文档提取测试点

经过分析需求描述中的输入、输出、处理、限制、约束等,给出对应的验证内容,并分析各个功能模块之间的业务顺序,和各个功能之间的传递信息和数据,对存在功能交互的功能项,给出对应的验证内容(功能交互测试)。同时须要考虑到需求的完整性,要充分覆盖软件需求的各类特征,包含隐形需求的验证,好比界面的验证,帐号惟一性验证(界面、易用性、兼容性、安全性、性能压力)。微服务

2. 编写测试计划和测试用例

为项目需求而编制的一组测试步骤,测试数据以及预期结果,以便测试某个程序是否知足客户需求,测试用例需关联到对应的issue或者story,测试计划的内容包含迭代内的所有开发任务。工具

3. 用例评审:确认用例是否覆盖到各个场景,以及用例是否符合需求

用例评审主要是产品、开发和测试人员,针对测试用例可否用于项目的测试而作的工做。主要是为了减小测试人员执行阶段作无效工做(提交无效问题等),以免三方需求理解不一致。评审按用例的优先级,功能的复杂程度进行;先对优先级高,功能复杂,疑问多的用例进行评审,再评审功能简单,优先级低的功能点。评审过程当中尽可能作到思路清晰,用最简洁的语言阐述每个功能点。对于评审过程当中,超过5分钟没法肯定结果的问题,能够记录下来,做为会后讨论跟进的重点。性能

4. 测试执行

测试执行是执行全部或部分选定的测试用例,并对结果进行分析的过程。测试执行活动是整个测试过程的核心环节,全部测试分析、测试设计、测试计划的结果将在测试执行中获得最终的检验。单元测试

5. 转化测试后的bug

将执行完的有bug的测试用例关联敏捷协做中的缺陷。在敏捷协做中一个缺陷能够快速定位到测试用例,帮助开发者快速获取测试结果,实现测试闭环。测试

6. 回归bug测试

经过敏捷中的迭代规划,制定团队的回归方案,积极跟开发人员沟通问题缘由、修复的方案和影响。总体的回归bug测试进度计划中须要包含全部回归测试和自动化回归测试时间,同时预估好天天的工做量,与实际完成的工做量进行对比,尽早知道测试进度是正常仍是延期,提前控制好风险,从而达到团队能更好地交付价值的目的。spa

总结

以上咱们回顾了Choerodon猪齿鱼敏捷测试在整个项目开发中的基本流程,详细介绍了各阶段存在的主要测试活动。总的来讲,敏捷测试的最终目的是持续交付,快速交付可靠的产品。敏捷过程的测试,除了对测试能力的要求以外,还要求测试人员在团队的协做能力更高。此外,随着迭代的不断增长,对自动化测试的能力也有较高要求。设计

但愿本文有助于正在使用敏捷模式或者打算使用敏捷模式的团队更好得理解敏捷测试。

关于猪齿鱼

Choerodon 猪齿鱼做为开源多云应用敏捷全链路技术平台,是基于开源技术Kubernetes,Istio,knative,Gitlab,Spring Cloud来实现本地和云端环境的集成,实现企业多云/混合云应用环境的一致性。平台经过提供精益敏捷、持续交付、容器环境、微服务、DevOps等能力来帮助组织团队来完成软件的生命周期管理,从而更快、更频繁地交付更稳定的软件。

更加详细的内容,请参阅Release Notes和官网。 你们也能够经过如下社区途径了解猪齿鱼的最新动态、产品特性,以及参与社区贡献:

欢迎加入Choerodon猪齿鱼社区,共同为企业数字化服务打造一个开放的生态平台。

本篇文章出自 Choerodon猪齿鱼社区柴晓燕。
相关文章
相关标签/搜索