本文概述
- 我们什么时候可以执行回归测试?
- 如何执行回归测试?
- 如何选择测试用例进行回归测试?
- 什么是回归测试工具?
- 什么是回归测试和配置管理?
- 重新测试和回归测试之间有什么区别?
- 回归测试面临哪些挑战?
- 回归测试的重要性是什么?
- 回归测试有哪些类型?
- 回归测试的优点是什么?
- 回归测试的缺点是什么?
- 总结
回归测试是一种软件测试。重新执行测试用例以检查应用程序的先前功能是否正常运行, 并且新的更改未产生任何错误。
当原始功能发生重大变化时, 可以在新版本上执行回归测试。这样可以确保即使发生更改, 代码仍然可以正常工作。回归意味着重新测试应用程序的那些未更改的部分。
回归测试也称为验证方法。测试案例通常是自动化的。测试用例需要执行多次, 并且一次又一次地手动运行相同的测试用例, 这也很费时且乏味。
例子
在这里, 我们将以一个案例来有效地定义回归测试:
考虑产品Y, 其中一种功能是触发确认, 接受和发送电子邮件。还需要进行测试以确保代码更改不会影响到它们。回归测试不依赖于Java, C ++, C#等任何编程语言。此方法用于测试产品的修改或所做的任何更新。它确保产品中的任何更改都不会影响产品的现有模块。验证错误已修复, 并且新添加的功能在该软件的先前工作版本中未造成任何问题。
我们什么时候可以执行回归测试? 只要生产代码被修改, 我们都会进行回归测试。
我们可以在以下情况下执行回归测试:
1.当新功能添加到应用程序中时。
例:
网站具有登录功能, 该功能仅允许用户使用电子邮件登录。现在提供了使用Facebook登录的新功能。
2.有变更要求时。
例:
记住以前从登录页面删除的密码。
3.修复缺陷时
例:
假设登录按钮在登录页面中不起作用, 并且测试人员报告了一个错误, 指出登录按钮已损坏。开发人员修复错误后, 测试人员将对其进行测试, 以确保登录按钮能够按预期结果正常工作。同时, 测试器测试与登录按钮相关的其他功能。
4.修复性能问题时
例:
加载主页需要5秒钟, 从而将加载时间减少到2秒。
5.环境发生变化时
例:
当我们将数据库从MySql更新到Oracle时。
如何执行回归测试? 当软件维护包括增强功能, 错误纠正, 优化和删除现有功能时, 就需要进行回归测试。这些修改可能会影响系统功能。在这种情况下, 必须进行回归测试。
【什么是回归测试()】可以使用以下技术执行回归测试:
文章图片
1.重新测试所有:
重新测试是进行回归测试的方法之一。用这种方法, 所有的测试用例都应该重新执行。在这里, 我们可以将重新测试定义为测试失败, 然后确定失败的原因是软件故障。如果报告了错误, 我们可以期待其中已修复缺陷的新版本软件。在这种情况下, 我们将需要再次执行测试以确认故障已解决。这称为重新测试。有些人将其称为确认测试。
重新测试非常昂贵, 因为它需要大量时间和资源。
2.回归测试选择:
- 在这种技术中, 将执行选定的测试用例诉讼, 而不是整个测试用例诉讼。
- 所选的测试用例套装分为两种情况
- 可重用的测试用例。
- 过时的测试用例。
- 可重用的测试用例可以在后续的回归周期中使用。
- 过时的测试用例不能在后续的回归周期中使用。
根据业务影响, 关键和常用功能对测试用例进行优先级排序。选择测试用例将减少回归测试套件。
如何选择测试用例进行回归测试? 它是通过行业检查发现的。客户报告的一些缺陷归因于最新的错误修复。这些产生了副作用, 因此选择测试用例进行回归测试是一门艺术, 而不是一件容易的事。
回归测试可以通过以下方式完成:
- 经常有缺陷的测试用例
- 对用户更可见的功能。
- 测试用例验证了产品的核心功能。
- 所有集成测试用例
- 所有复杂的测试用例
- 边值测试用例
- 成功的测试案例样本
- 测试用例失败
以下是用于回归测试的基本工具:
1.硒
Selenium是一种开源工具。该工具用于自动测试Web应用程序。对于基于浏览器的回归测试, 使用硒。用于UI级别回归测试的Selenium用于基于Web的应用程序。
2. Ranorex工作室
使用内置的Selenium Web驱动程序对台式机, Web和移动应用程序进行一体式回归测试自动化。 Ranorex Studio包括完整的IDE以及用于无代码自动化的工具。
3.快速测试专家(QTP)
QTP是用于回归和功能测试的自动化测试工具。它是一个数据驱动的基于关键字的工具。它使用VBScript语言进行自动化。
4. Rational Functional Tester(RTF)
Rational Functional Tester是一种Java工具, 用于自动化软件应用程序的测试案例。 RTF用于自动化回归测试用例, 并且还与理性功能测试器集成。
什么是回归测试和配置管理? 在不断修改代码的敏捷环境中, 回归测试中的配置管理变得势在必行。为了确保有效的回归测试, 我们必须遵循以下步骤:
- 在回归测试阶段, 不允许在代码中进行任何更改。
- 回归测试用例必须不受开发人员的影响。
- 用于回归测试的数据库必须隔离;数据库中不允许进行更改。
重新测试是一种测试, 用于检查在修复缺陷后是否成功通过了最终执行中不成功的测试用例。
回归测试是指在对软件应用程序进行代码更改时对其进行测试, 以确保新代码不会影响软件的其他部分。
回归测试是一种执行的测试, 用于检查代码是否未更改应用程序的现有功能。
重新测试和回归测试之间的差异是
先生 | Re-testing | Regression Testing |
---|---|---|
1. | 进行重新测试以确保在修复缺陷后, 最终执行失败的测试用例能够通过。 | 进行回归测试以确认代码更改是否未影响现有功能。 |
2. | 重新测试可修复缺陷。 | 回归测试的目的是确保代码更改不会对现有功能造成不利影响。 |
3. | 缺陷验证是重新测试的一部分。 | 回归测试不包括缺陷验证。 |
4. | 重新测试的优先级高于回归测试, 因此它是在回归测试之前完成的。 | 根据项目类型和资源的可用性, 回归测试可以与重新测试并行进行。 |
5. | 重新测试是一项计划内的测试。 | 回归测试是通用测试。 |
6. | 我们无法自动化用于重新测试的测试用例。 | 我们可以自动化进行回归测试;手动测试可能既昂贵又耗时。 |
7. | 重新测试是针对失败的测试用例。 | 回归测试适用于通过的测试用例。 |
8. | 重新测试以确保原始故障已得到纠正。 | 回归测试检查是否有意外的副作用。 |
9. | 重新测试使用新的构建使用相同的数据和相同的环境, 使用不同的输入执行缺陷。 | 回归测试是在现有项目中进行修改或强制更改时。 |
10. | 开始测试之前, 无法进行重新测试。 | 回归测试可以从功能说明, 用户指南和手册以及有关已纠正问题的缺陷报告中获得测试用例。 |
- 耗时的:
回归测试会花费大量时间来完成。回归测试再次涉及现有测试, 因此测试人员不会为重新运行测试而兴奋。 - 复杂:
当需要更新任何产品时, 回归测试也很复杂。测试列表也在增加。 - 沟通业务规则:
回归测试可确保现有产品功能仍然正常运行。与非技术负责人进行有关回归测试的沟通可能很困难。高管希望看到产品向前发展, 并在回归测试上投入大量时间, 以确保现有的功能难以实现。
回归测试有哪些类型? 不同类型的回归测试是:
文章图片
1.)单位回归
单元回归是在单元测试阶段完成的, 而代码是独立测试的;阻止了对要测试的单元的所有依赖关系, 以便该单元可以单独进行测试。
2.)部分回归
即使代码中有更改, 也使用部分回归来验证代码是否运行良好, 并且单元与未更改的代码集成在一起。
3.)完全回归
完全回归在模块上。何时将更改应用到多个模块上, 以及更改是否不确定对任何模块的影响。
回归测试的优点是什么? 回归测试的优点是:
- 回归测试可提高产品质量。
- 它确保任何错误修复或更改都不会影响该产品的现有功能。
- 自动化工具可用于回归测试。
- 确保已解决的问题不会再次发生。
- 应该对代码中的少量更改进行回归测试, 因为即使代码中的微小更改也会在现有功能中造成问题。
- 如果在项目中未使用自动化来进行测试, 则一次又一次地执行测试将非常耗时且乏味。
为了自动化回归测试用例, 有几种可用的自动化工具。工具需要具有更新测试套件的能力, 因为回归测试服需要经常更新。
推荐阅读
- 烟雾测试与健全性测试有什么区别()
- 什么是整合测试(图文详细解读)
- android 属性介绍
- com.fasterxml.jackson.databind.ObjectMapper..readValue.convertValue
- 手机APP测试环境搭建---appium
- Shareinstall一一可以解决APP大大小小的问题
- App.config自定义节点读取
- Android 实现锚点定位
- appium原理及api