目录

前言

自动化测试生命周期方法论的6个阶段

确定测试自动化的范围

选择正确的自动化工具

测试计划+测试设计+测试策略

设置测试环境

测试环境设置的关键区域

设置测试环境管理的最佳实践:

自动化测试脚本开发+执行

分析+测试结果和测试报告的生成

总结


前言

如今,项目经理和开发人员面临着用最少的资源并在日渐缩减的时间表中构建可靠应用程序的挑战。因此,组织正在转向自动化测试以有效地实现此目标。

在自动化测试方面,我们许多人认为这只是SDLC(软件开发生命周期)的一部分,但是要实现自动化测试的最佳结果,必须遵循完整的自动化测试周期,即自动化测试生命周期。

本文适用于希望学习完整的自动化测试生命周期的实施如何提高软件产品质量的学习者。在这里,我将讨论完整的自动化测试生命周期。

自动化测试生命周期方法论的6个阶段

自动化测试生命周期的实现与软件开发生命周期过程并行执行。

结构化的自动化测试生命周期包括一个多阶段过程,该过程支持利用和引入自动化测试工具,开发和运行测试用例,开发测试设计,构建和处理测试数据和环境所需的活动。在自动化测试生命周期方法中,构建测试设计以描绘测试工作,从而为项目和测试团队提供有关测试程序范围的框架。

确定测试自动化的范围

这是自动化测试生命周期的第一阶段,旨在确定自动化的可行性。分析可行性时应考虑各个方面。同样,在手动测试用例包上执行可行性分析也很重要,它可以使自动化工程师设计测试脚本。

在此特定阶段,应妥善处理以下事项。

  • 哪些应用程序模块可以自动化,哪些不能自动化?

  • 哪些测试可以自动化,以及如何使其自动化?

  • 还应考虑成本,团队规模和专业知识等因素。

在开始测试自动化之前,应进行以下可行性检查:

-测试用例自动化可行性

  • AUT自动化可行性

浏览受测的应用程序屏幕,并提及应用程序的所有UI组件,以有效地进行可行性分析。确定要通过自动化测试工具自动化的UI组件的百分比。尝试找出自动化测试工具,这些工具只需做很少的改动就可以帮助自动化UI组件。这将我们带入下一阶段!

选择正确的自动化工具

自动化测试高度依赖于工具。这就是为什么找到正确的自动化测试工具是自动化测试生命周期中至关重要的阶段的原因。当您在寻找自动化工具时,您需要记住预算,项目中使用的技术,工具对板载资源的熟悉程度,直观性,灵活性等。选择一种工具,为您提供可以解决查询或问题的支持团队。

例如,如果您正在寻找一种自动化的浏览器兼容性测试工具,则需要牢记所提供的各种浏览器。能够在不同的浏览器和设备之间捕获视频日志,自动化脚本的元数据。突出显示和跟踪错误的机制。

需要提供了一个基于云的Selenium Grid,它与支持Selenium的每个测试自动化框架兼容。提供的自动化仪表板甚至可以捕获测试执行的详细信息,最终为您提供分步截图,测试执行的视频日志以及元数据。

测试计划+测试设计+测试策略

自动化测试生命周期方法的最关键阶段定义了如何实现和实现测试自动化的目标。在自动化测试生命周期的“测试策略”阶段,选择测试自动化框架是首要的任务。

选择工具取决于应用程序中使用的技术。在开始自动化测试之前,请完全了解您的产品。例如,如果它是一个桌面应用程序,请找到它所基于的语言。或者,如果您要测试Web应用程序,请了解您所使用的不赞成使用的功能,该功能可能在各种浏览器中都不兼容。

在测试计划阶段,测试团队将确定测试程序的创建标准和准则;硬件; 支持测试环境的软件和网络;初步测试时间表;测试数据要求;缺陷跟踪过程和相关的跟踪工具,以及控制测试配置和登台环境的过程。

测试工程师团队开发了一种测试架构,以描述测试程序的结构以及设计测试程序模型后管理测试程序的方式。后期设计是一种测试体系结构,其中描述了整个测试程序的结构以及测试过程的管理。

计划测试管理策略时,请确保考虑以下事项:

  • 从测试管理工具中收集所有手动测试用例,以确定需要自动化的测试用例。

  • 了解测试工具的优缺点后,确定要使用的框架。

  • 在用于测试管理的工具中为自动化测试用例构建测试套件。

  • 确保在测试计划中提及背景,风险,背景以及工具与应用程序之间的依赖关系。

  • 向客户或利益相关者寻求测试策略的批准。

设置测试环境

顾名思义,自动化测试生命周期的这一阶段涉及设置将要执行测试用例的机器或远程机器。为什么我们需要远程机器?因为除非我们生活在理想的世界中,否则您的用户将使用不同的机器来访问您的网站或Internet上的Web应用程序。

不断检查不同的设备是一回事,但是我们还需要对各种浏览器和浏览器版本保持谨慎。由于您的网站在一个浏览器与另一个浏览器上的呈现方式可能不同。跨浏览器兼容性测试(也称为跨浏览器测试)是一种程序,其中我们跨多个浏览器版本测试网站或Web应用程序,以确保我们为所有客户提供无缝的用户体验。

环境设置阶段需要周密的计划,您需要确保能够在尽可能多的不同场景中最大化测试覆盖率。测试团队负责安排和跟踪环境设置活动;安装测试环境软件,网络资源和硬件;完善测试数据库并开发测试平台脚本和环境设置脚本。

测试环境设置的关键区域

测试数据 –与生产相比,很多测试环境设置中没有填充相似的数据,一旦将代码更改投入生产环境,这会使产品非常脆弱。前端运行环境 –确保您具有前端运行环境来执行负载测试,以分析处理Web流量的能力。

  • 要测试的所有系统,模块和应用程序的清单。

  • 用于暂存环境的隔离数据库服务器。

  • 跨各种客户端操作系统进行测试。

  • 跨最大浏览器和浏览器版本进行测试。

  • 确保在低端和高端网络上测试您的网站,以了解呈现时间和网站或网络应用的整体外观之间的差异。

  • 文档是关键 –确保在中央存储库中涵盖所有配置指南/安装指南/用户手册等。

测试环境设置涉及以下任务:

工具许可证。

  • 设置实用程序,例如高级文本编辑器和比较工具。

  • 自动化框架实施

  • AUT访问和有效凭证

  • 加载项许可证

各种组织都使用暂存环境来测试软件。最好的方法是复制生产数据以进行测试。它可以帮助测试工程师发现问题而不会破坏生产数据。这是导致登台环境失败的13个原因。

设置测试环境管理的最佳实践:

  • 全面收集并了解测试环境,并培训测试团队成员。

  • 检查所需的软件,许可证和硬件。

  • 维护自动化工具及其配置的清单。

  • 维护跨浏览器测试矩阵,以确保您涵盖有关优先级和市场份额的众多浏览器和版本上的测试。

  • 确保使用实时流量进行测试,以确保您的更改更具可持续性。

  • 计划测试环境的计划使用。

自动化测试脚本开发+执行

一旦安装了测试环境,就该执行测试脚本了。因此,自动化测试生命周期的这一阶段专用于执行所有测试脚本。为了执行脚本执行,已签名和经过单元测试的测试脚本将交付给自动化测试团队。对于确保所有测试脚本均正确运行至关重要。因此,在开发测试脚本之前,需要注意以下事项:

  • 根据实际需求创建测试脚本。

  • 创建可以在整个测试过程中使用的通用功能方法。

  • 确保创建可重用,结构化和简单的脚本,以便第三方可以清楚地理解它。这里有8条可行的见解,旨在编写更好的自动化代码。

  • 执行测试脚本的代码审查,以更好地保证质量。

  • 利用更好的报告。

测试脚本成功开发后,应牢记以下几点来执行它:

  • 测试脚本应根据测试用例包括所有功能方面。

  • 确保在多个环境和多个平台上运行测试脚本。

  • 如果可能,可以执行批处理以节省时间和精力。

  • 如果由于某些功能而发生故障,请编写错误报告。

为了执行测试脚本和过程,测试团队必须遵守为执行过程而决定的时间表。在此阶段,将执行测试结果的评估并准备测试结果文档。执行测试结果评估并准备测试结果文档。运行针对单元,系统,用户接受度和集成测试而设计的计划,以测试整个系统。代码分析是在单元测试时完成的。当算法,资源利用率和实例化不当扩展时,性能分析会发现实例。

分析+测试结果和测试报告的生成

在执行所有类型的测试之后,测试团队将进行分析以识别遇到相对数量的问题报告的特定功能或组件。

分析结果表明是否需要额外的测试工作和程序。

分析产生的测试结果可以确认执行的测试脚本/过程是否可以识别错误。

这是自动化测试生命周期的最后一个阶段,现阶段与所有相关利益相关者共享测试报告。这就是为什么测试报告对于分析您的网络应用对逆境的反应至关重要。您可以使用老式的Excel工作表,但是LambdaTest Automation可以提供基于应用程序的报告,其中包含通过基于云的Selenium Grid上的自动化脚本执行的所有测试用例。有趣吧?了解有关LambdaTest Selenium Grid的所有知识,以进行自动跨浏览器测试。

总结

自动测试是在适当的时间范围内并以足够的资源满足测试目标的有效方法。但是,请确保实现完整的自动化测试生命周期,以获得预期结果并以最佳方式测试应用程序。没有计划或序列的自动化测试会导致大量脚本,这些脚本可能经常失败,并且也需要人工干预。

总结

感谢每一个认真阅读我文章的人!!!

如果下面这些资料用得到的话可以直接拿走:

1、自学开发或者测试必备的完整项目源码与环境

2、测试工作中所有模板(测试计划、测试用例、测试报告等)

3、软件测试经典面试题

4、Python/Java自动化测试实战.pdf

5、Jmeter/postman接口测试全套视频获取

6、Python学习路线图

重点:配套学习资料和视频教学

那么在这里我也精心准备了上述大纲的详细资料包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。如下,需要的评论区留言或者私信我

自动化测试生命周期的六个阶段相关推荐

  1. 软件生命周期-SDLC-的六个阶段简单介绍

    1.评估现有的系统-问题的定义及规划 此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性. 2.需求分析 在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析.需求 分析 ...

  2. 软件生命周期的六个阶段

    软件的生命周期,亦称软件的生存周期.它是按开发软件的规模和复杂程度,从时间上把软件开发的整个过程(从计划开发开始到软件报废为止的整个历史阶段)进行分解,形成相对独立的几个阶段,每个阶段又分解成几个具体 ...

  3. 自动化测试与自动化测试生命周期

    1.1 自动化测试的定义及概述 1.1.1 软件测试的定义与分类 软件测试[2],就是在软件投入运行前,对软件需求分析.设计规格说明和编码的最终复查,是软件质量保证的关键步骤. 定义1:软件测试是为了 ...

  4. 软件的生命周期(软件工程各阶段的工作)

    其实软件工程是一个非常大的概念,我们的软件测试也好,软件开发也好,软件运维也好,其实都是属于软件工程的范畴. 今天就讲一讲软件工程和我们软件测试相关的一些内容. 我们今天三个主要的节点:   1.软件 ...

  5. Servlet的生命周期分为5个阶段:加载、创建、初始化、处理客户请求、卸载。

    Servlet的生命周期分为5个阶段:加载.创建.初始化.处理客户请求.卸载. (1)加载:Servlet容器(Tomcat)通过类加载器加载servlet文件(.class) (2)创建:通过调用s ...

  6. JavaBean、MVC模式、Servlet、Servlet生命周期:5个阶段

    JavaBean 后缀Dao:表示操作数据库. JavaBean(就是一个java类)定义: (1)public修饰的类,public无参构造 (2)所有属性都是private,并且提供set/get ...

  7. bug的生命周期都有那些阶段

    bug的生命周期都有那些阶段 一.主要有八个生命周期阶段 二.bug生命周期流程图 一.主要有八个生命周期阶段   1)New: 是新发现的bug(指给对应的开发):   2)Open: 开发确认这是 ...

  8. 软件开发生命周期有几个阶段?

    关注+星标公众号,不错过精彩内容 作者 | 情报小哥 ID | 嵌入式情报局 很多初学软件编程的小伙伴,只顾着"编程",其他开发相关的一些"技能"很少关注.如果 ...

  9. react学习笔记(4)组件的生命周期(运行阶段和销毁阶段)以及事件处理函数

    1.组件的生命周期 接着(2)中的组件生命周期 1.运行阶段 运行阶段有5个步骤: componentWillReceiveProps: 父组件修改属性触发,可以修改新属性,修改状态. shouldC ...

最新文章

  1. MySQL数据库表名、列名、别名区分大小写的问题
  2. 一种绝对提高开发水平的方法
  3. linux 信号处理实验,linux下信号处理
  4. .net core编写转发服务
  5. 物联网在改造海上钻井平台监测方面发挥着关键作用
  6. 最新版本elasticsearch本地搭建入门篇
  7. .htaccess 基础教程(四)Apache RewriteCond 规则参数
  8. zoj3829 Known Notation --- 2014 ACM-ICPC Asia Mudanjiang Regional Contest
  9. DW Basic Knowledge1
  10. 联盛德W806+INA226 = 功率计
  11. ArcGIS如何进行拓扑检查
  12. arping命令 《openstack 网络》
  13. 软件推荐,强力卸载软件geek uninstaller
  14. 智能计算系统1 环境搭建
  15. 【自然语言处理】词性标注
  16. USB 协议整理 七:STM32F103之USB概述
  17. 解决视频导入pr中只显示音频
  18. usb-blaster 驱动在设备管理器处更新且安装成功后仍有黄色感叹号,显示:Windows 无法加载此软件的设备驱动程序。驱动程序可能损坏或丢失(代码:39)
  19. MySql必知必会学习
  20. OpenGL PowerVR SDK 编译:Could NOT find X11 (missing: X11_X11_INCLUDE_PATH X11_X11_LIB)

热门文章

  1. 基于pyhton3.6-机器学习实战-支持向量机SVM代码解释
  2. 题目:计算 1! + 2! + 3! + 4! +... + 10! 说明:4! 表示4的阶乘。4的阶乘是:1 * 2 * 3 * 4
  3. 积跬步,聚小流------关于手机号,前端应该注意哪些
  4. 位与,位或,位异或运算符的理解
  5. 网络编程面试汇总(C++)
  6. IDEA安装 激活 基本使用
  7. ios SnapKit 约束Unable to simultaneously satisfy constraints 和UIView-Encapsulated-Layout-Height的警告
  8. 【Java IO流知识总结】
  9. C语言对于char*和char[]的理解
  10. java 声明式编程_声明式编程 - SegmentFault 思否