标签:并且 开发人员 htm 供应商 特性 检测 测试工具 程序包 移动应用
目录
Selenium是最广泛使用的开源Web UI(用户界面)自动化测试套件之一。它最初由杰森·哈金斯(Jason Huggins)于2004年开发,作为Thought Works的内部工具。Selenium支持跨不同浏览器,平台和编程语言的自动化。
Selenium可以轻松部署在Windows,Linux,Solaris和Macintosh等平台上。此外,它支持IOS(IOS,Windows Mobile和Android)等移动应用程序的OS(操作系统)。
Selenium通过使用特定于每种语言的驱动程序支持各种编程语言。Selenium支持的语言包括C#,Java,Perl,PHP,Python和Ruby。目前,Selenium Web驱动程序最受Python和C#欢迎。 Selenium测试脚本可以使用任何支持的编程语言进行编码,并且可以直接在大多数现代Web浏览器中运行。 Selenium支持的浏览器包括Internet Explorer,Mozilla Firefox,Google Chrome和Safari。
需要一些JavaScript知识才能学习本教程。 关于一些后端平台的知识不是必需的,但它可以帮助您了解各种Selenium概念。
Selenium有以下功能特性:
Selenium的局限性主要如下:
扩展:
什么是页面对象模型?页面对象模型(PO)是一种设计模式,用来管理维护一组web元素的对象库。在PO下,应用程序的每一个页面都有一个对应的page class,每一个page class维护着该web页的元素集和操作这些元素的方法,它的最终目的还是将页面对象(方法和元素)与测试代码分离,提高测试代码的可维护性、可扩展性及可复用性。
UFT(Unified Functional Testing)是一种自动化测试工具,以VBScirpt为内嵌语言。UFT支持功能测试和回归测试自动化,可用于软件应用程序和环境的测试。
RFT(IBM Rational Functional Tester)是一款先进的、自动化的功能和回归测试工具,它适用于测试人员和GUI开发人员。
SilkTest:SilkTest 可以自动捕捉,检测和重复用户交互的操作从而驱动测试的进行。
Selenium和QTP是市场上最常用的自动化测试工具。 因此,我们比较了Selenium与QTP的一些特征。
特征 | Selenium | HP QTP |
---|---|---|
许可 | 开源工具 | 有版权 |
客户支持 | Selenium社区论坛 | 专门的HP支持 |
测试支持 | 仅支持基于Web的应用程序的自动化。 | 支持基于Web和桌面的应用程序的测试。 |
测试脚本执行期间的资源消耗 | 资源消耗低 | 资源消耗高 |
支持的编程语言 | Java, C#, Ruby, Python, Perl, PHP and JavaScript | VB Script |
支持的环境 | Android, iOS, Windows, Linux, Mac, Solaris. | 仅适用于Windows |
支持的浏览器 | 谷歌浏览器,Mozilla Firefox,Internet Explorer,Edge,Opera,Safari等 | 特定版本的Google Chrome,Mozilla Firefox和Internet Explorer。 |
对象存储库/恢复方案 | 无 | 内置对象存储库和恢复方案。 |
浏览器控件 | 无 | 可在浏览器中访问收藏夹栏,后退和前进按钮等控件。 |
测试报告生成 | 它依赖于外部工具来生成测试报告。 | 在工具中生成内置测试报告。 |
参数设置 | 依赖任何一种受支持的编程语言进行参数化。 | 内置工具可用于参数化。 |
Selenium不仅仅是一个工具,而是一套软件,每个软件都有不同的方法来支持自动化测试。 它由四个主要组成部分组成,包括:
Selenium IDE实现为Firefox扩展,在测试脚本上提供记录和回放功能。它允许测试人员以HTML,Java,Ruby,RSpec,Python, C# ,JUnit和TestNG等多种语言导出录制的脚本。 可以在Selenium RC或Webdriver中使用这些导出的脚本。
Selenium IDE的范围有限,生成的测试脚本不是非常健壮和可移植。
Selenium RC(由selenium正式弃用)允许测试人员使用任何支持的编程语言编写自动化Web应用程序UI测试。 它还涉及一个HTTP代理服务器,它使浏览器能够相信正在测试的Web应用程序来自代理服务器提供的域。
Selenium RC有两个组件:
下图给出了Selenium RC的架构表示。
Selenium RC在连续集成系统下测试复杂的基于AJAX的Web用户界面非常有效。
Selenium WebDriver(Selenium 2)是Selenium RC的继承者,也是Selenium Suite最重要的组件。 SeleniumWebDriver提供了一个编程接口来创建和执行测试用例。 编写测试脚本是为了识别网页上的Web元素,然后对这些元素执行所需的操作。
与Selenium RC相比,Selenium WebDriver执行速度更快,因为它可以直接调用Web浏览器。 另一方面,RC需要RC服务器与Web浏览器进行交互。
因为,WebDriver直接调用不同浏览器的方法,因此每个浏览器都有单独的驱动程序。 一些最广泛使用的Web驱动程序包括:
注意:Selenium版本2将Selenium RC和Selenium WebDriver的最佳功能合并到Selenium WebDriver中,最新发布的Selenium 3具有新增功能和功能。
Selenium Grid也是Selenium Suite的一个重要组件,它允许在不同的机器上并行运行不同浏览器的测试。 简单来说,可以在运行不同浏览器和操作系统的不同机器上同时运行测试。
Selenium Grid遵循Hub-Node架构来实现测试脚本的并行执行。Hub被视为网络的主设备,另一个将是节点。 Hub控制在网络的各个节点上执行测试脚本。
标签:并且 开发人员 htm 供应商 特性 检测 测试工具 程序包 移动应用
原文地址:https://www.cnblogs.com/soundcode/p/12363043.html