Selenium基本术语

Selenium基本术语

在继续学习本教程之前,先了解一些与应用程序的自动化测试相关的关键概念。

随着对高效软件产品的需求不断增长,每个软件开发团队都需要在将最终产品推向市场之前进行一系列测试。 测试工程师在软件产品发布之前努力捕获故障或错误,但交付的软件总是存在缺陷。 即使使用最佳的手动测试流程,最终的软件产品仍有可能存在缺陷或无法满足最终用户的要求。 自动化测试是提高软件测试的有效性,效率和覆盖范围的最佳方法。

自动化测试

自动化测试使用专用工具自动执行手动设计的测试用例,无需任何人手为干预。 自动化测试工具可以访问测试数据,控制测试的执行,并将实际结果与预期结果进行比较。 因此,生成被测系统的详细测试报告。

自动化测试涵盖应用程序的功能和性能测试。

  • 功能自动化用于功能测试用例的自动化。 例如,回归测试本质上是重复的,是自动化的。
  • 性能自动化用于非功能性能测试用例的自动化。 例如,在相当大(例如100个用户)负载下测量应用程序的响应时间。

自动化用于功能自动化的测试工具:

  • 由HP提供的Quick Test Professional。
  • Rational Robot,由IBM提供。
  • Coded UI,由Microsoft提供。
  • Selenium,开源软件。
  • Auto It,开源软件。

自动化用于非功能自动化的测试工具:

  • Load Runner,由HP提供。
  • JMeter,由Apache提供。
  • Burp Suite,由PortSwigger提供。
  • Acunetix,由Acunetix提供。

自动化测试生命周期

为什么要进行自动化测试?

自动化测试具有提高任何软件长期效率的特定优势。 测试自动化的主要优点是:

  • 长期以来,自动化测试一直被认为对大型软件组织有益。 虽然,小型公司通常认为实施起来太昂贵或困难。
  • 可以对自动化测试工具进行编程,以便在特定时间构建和执行测试脚本,而无需任何人为干预。例如,自动测试可以在一夜之间自动启动,测试人员可以在第二天早上分析自动化结果。
  • 自动化测试工具能够播放预先录制和预定义的动作。
  • 自动化测试支持频繁的回归测试
  • 它为开发人员提供快速反馈。
  • 它提供了无限次的测试用例执行迭代。
  • 它提供了有关测试用例的严格文档。
  • 自动化测试生成定制的缺陷报告。
  • 与手动测试相比,更不容易出错。

Web应用程序的测试自动化

如果我们看一下目前市场情况中普遍存在的软件应用程序的类型,大多数软件应用程序都是作为基于Web的应用程序编写的,以便在互联网浏览器中运行。 基于Web的应用程序的测试策略在公司和组织之间差异很大。在高度交互和响应迅速的软件过程的时代,许多组织正在使用某种形式的敏捷方法,测试自动化经常成为软件项目的要求。

为Web应用程序执行测试自动化的最有效方式是采用金字塔测试策略。此金字塔测试策略包括三个不同级别的自动化测试。 单元测试代表了此测试自动化金字塔的基数和最大百分比。 接下来是服务层或API测试。 最后,GUI测试位于顶部。 金字塔看起来像这样: