什么是自动化测试?—测试流程及其类型

随着我们欢迎新的应用程序和设备进入我们的家庭和企业,来接管一项重要的任务,软件变得更加有价值和重要。4月16日TH.1994年,一架飞机致命的飞机坠毁,就在着陆机场前。其中250人被杀,这是中国航空公司最致命的事故。事件的主要原因是由于软件错误。在实现之前没有测试软件用户。每个系统都有软件错误。在没有任何错误的情况下设计软件系统是不可能的。但由于软件测试可以保护由于软件错误引起的故障引起的。软件测试是用于查找开发计算机软件的错误,完整性和质量的过程。它包括一组随着在软件中查找错误而进行的一系列活动,以便在产品释放到最终用户之前可以纠正。有两种类型的测试程序手动测试,和自动化测试。

什么是自动化测试?

自动化测试使用工具,脚本和软件的帮助来通过重复预定义的操作来执行测试用例。它完全取决于预脚本测试,我们将在执行预脚本时与实际进行比较预期结果。测试等负载,应力,可以使用自动化工具测试尖峰。示例:Facebook正在测试一个脑 - 计算机界面,可能将思想转化为数字文本。


哪些测试用例应该首先自动化?

下面是首先要自动化的测试用例,

  • 重复的任务 -一个类似于电子商务网站的例子,多次测试登录凭据,以确保登录页面能按用户需求工作。
  • 捕获和分享结果 -与处理数字和制作图表相比,投资工具或自动化策略会更有用,因为这样可以节省时间。
  • 数据输入测试 -将信息自动化到数据源上,使其易于读取。可以更好地处理数据可变性。当需要从成千上万的数据中搜索特定数据时,可以使用自动化工具来搜索特定数据。
  • 定时或筛选响应 -不需要手动跟踪屏幕,可以通过使用自动代码“wait until”来改进。
  • 非功能性测试 -自动化非功能测试类型的示例是自动化负载测试。如果我们有一万元而不是手动测试,则可以更好地使用自动化测试。

自动化测试过程

用于自动化测试的逐步过程是

自动化 - 测试 - 过程
automation-test-process

1)。测试工具选择

根据所涉及的测试的性质选择合适的工具对自动化成功非常重要。对于代码驱动的测试,过程或图形用户界面基于测试的适当工具必须相应地选择。


2)。定义自动化范围

自动化的范围起着基础性的作用。例如,任何业务的重要特性都是具有大量数据的场景,这些场景具有跨不同平台和应用程序的公共功能,以及测试用例的复杂性。等。

3)。规划设计与发展

在确定目标和自动化类型的类型后,应该决定自动化测试的执行情况。首先将测试用例开发成较小的逻辑测试,然后编写测试脚本和开发测试套件,在那里自动地在另一个之后运行。这是通过在具有多个测试用例的库中的适用版中创建测试来生成。

4)。测试执行

自动化工具或测试管理工具用于执行测试脚本。最后执行后,必须详细介绍一个报告。因此,报告可以用作其他测试的参考。

5)。维护

为每个周期添加,审核和维护自动化脚本。维护成为必要的地方。例如,在编写代码之后,我们检查代码,如果发生故障,则会出现任何错误。因此,我们确定代码的哪一部分具有错误并修复它,然后从头开始运行代码。因此,维护扮演了一个重要的作用,这提高了自动化脚本的必要性。

自动化方法

自动化有三种方法,它们是

1).代码驱动方法

它测试帧工作,侧重于测试案例执行,以了解各种代码是否按照不同条件下的预期执行。它是敏捷软件开发中使用的流行方法。

2)。图形用户界面(GUI)

可以使用此方法测试具有GUI的应用程序来记录用户的操作并响应任意次数。示例:用于测试网站的Selenium工具。测试用例可以用任何脚本语言写作Java,Phyton,C ..等。

3)。框架方法

这是一套指导方针。框架将函数的库,测试数据源,对象详细信息和其他可重用模块汇集在一起​​。维护成本较低,高效。示例:如果测试用例中存在任何更改,则需要更新测试用例文件的那部分,而不会更改驱动程序或启动脚本。

类型的框架

它们有不同类型的框架方法

  • 线性脚本帧工作
  • 数据驱动框架
  • 关键字驱动的帧工作
  • 模块化的测试框架
  • 混合测试框架工作。

自动化测试类型

不同类型的自动化测试是

  1. 单元测试
  2. 烟雾测试
  3. 功能测试
  4. 集成测试
  5. 回归测试

1)。单元测试

在Web应用程序中,可能有几个组件/型号将被测试。测试过程每个和每个模型都是单元测试。它是在开发阶段完成的。代码由开发人员和测试人员编写的。

2),冒烟测试

烟雾测试可选择称为“构建验证测试”。它用于检查代码是否被编写的是终端结果的期望或否。在烟雾测试中,一旦测试完成,它的最终结果将决定将继续进行未来的测试或否。测试期间的问题可以在早期阶段识别。

3)。功能测试

它检查网络的功能,相应地工作或否。例如,如果我们考虑登录页面,我们必须输入用户ID和密码。除非我们输入正确的数据,否则我们的预期页面不会打开。如果代码被编写为登录​​页面并正确测试预期页面,则意味着功能测试正常工作。

4)集成测试

在这种情况下,单个组件被集成并立即测试。我们可以检查各个模块是否可以相互通信。例如,如果我们考虑制造一支圆珠笔,这支笔由笔芯、笔帽和笔体组成。,它们分别生产并组装在一起。在装配时,我们要检查它们是否安装正确。

5)。回归测试

当代码中有任何更新时,我们要确保它不会影响已经写好的代码。因此,我们进行回归测试。回归测试的使用是基于需求更新代码,检测错误并修复它。回归测试的一个例子是银行网站,该网站在需要时定期更新,比如更新经常账户余额。因此,在更新网站时,必须确保新更新的功能不会影响已经存在的功能。

如何选择自动化工具?

选择适当的自动化工具检查下面列出的以下属性,

  • 环境支持
  • 数据库测试
  • 目标识别
  • 图像测试
  • 错误恢复测试
  • 多个框架支持
  • 减少成本
  • 大量的测试报告和成本。

自动化测试工具的类型

有很多自动化测试工具,下面列出的很少

1)。硒

它是开源,是一种流行的测试方法,用于执行Web应用程序,多个浏览器和平台。最新版本的硒是selenium4。程序员需要提前编程语言技能。有四种组分的硒,硒IDE,硒遥控器,网状驱动器,硒网。

2)。Watir都

它是由自动化Web应用程序测试的Ruby库组成的开源测试工具。Watir的最新版本是Watir 6.16。代码可以用任何语言编写。Firefox,Chrome,Safari是一定的浏览器,Watir支持。Watir的一些特征是,它需要屏幕短路,页面性能,它可以轻松下载任何文件。

3)。Ranorex

它是一个灵活的all in one GUI测试工具。它适用于所有环境浏览器和设备。它支持c#和V.NET。它内置在Microsoft windows和windows server上。ranorex的主要组件有ranorex记录器、ranorex存储库、ranorex spy、ranorex代码编辑器和ranorex调试器。

4)。API(应用程序编程界面测试)

它是一个移动测试工具,它是开源应用软件。API查找已执行的API测试是否提供准确的结果或否。有各种类型的API测试,单位测试,功能测试,负载测试,运行时错误检测,安全测试,Web UI测试,穿透测试,模糊测试。它是在POSIX API上实现的。

移动应用程序自动化测试工具

移动应用程序的各种类型的自动化测试工具是Appium,Robotium,Monkeyrunner,UI Automator,Selendroid,MonkeyTalk,Testdroid,Calabash,Frank,Seetest

1)。安排

  • 这是一个开源
  • 支持Java,Ruby和其他人
  • 源代码可以重用
  • 兼容Android和iOS。

2)。Robotium

  • 这是一个开源
  • 兼容所有Android版本和颠覆版。
  • 代码是用Java编写的。

3)。蒙克里克纳

  • 框架或功能级测试是使用monkeyrunner完成的
  • 代码用Python编写
  • 特点:它一次控制许多设备,自动化可以是可扩展的,Android应用程序和硬件可以测试,自动化可以是可扩展的。

4)。UI Automator.

  • 它用于使用UI测试用例测试用户界面。
  • 支持各种版本的Androids
  • 它可以锁定和解锁智能手机

5)。Selendroid

  • 用于测试基于android的hybrid的用户界面。
  • 使用selendroid写入测试用例
  • 一种协议像JSON线非常兼容。

涉及自动化测试的风险

自动化测试所涉及的风险是

  • 初始成本将会很高
  • 自动化永远不是100%
  • 自动化不固定的UI
  • 时间和努力评估不正确
  • 自动化工具的不兼容。

自动化测试的优势

优势自动化测试是

  • 简化了测试用例的执行
  • 提高了测试的可靠性
  • 降低维护成本
  • 测试结果是公开的
  • 没有人为错误
  • 节省时间和内存。

这里我们有描述软件自动化测试,其测试过程、自动化测试类型及自动化测试工具。这里有一个问题,“为什么自动化测试比手工测试更好?”

添加评论