5-5日报
selenium是什么?
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。
Selenium有以下功能特性:
- Selenium是一个开源和可移植的Web测试框架。
- Selenium IDE为创作测试提供了回放和录制功能,而无需学习测试脚本语言。
- 它可以被视为领先的基于云的测试平台,可帮助测试人员记录他们的操作并将其导出为可重复使用的脚本,并具有易于理解且易于使用的界面。
- Selenium支持各种操作系统,浏览器和编程语言。如下列表:
- 编程语言: C# ,Java,Python,PHP,Ruby,Perl和JavaScript
- 操作系统:Android,iOS,Windows,Linux,Mac,Solaris。
- 浏览器:谷歌浏览器,Mozilla Firefox,Internet Explorer,Edge,Opera,Safari等。
- 它还支持并行测试执行,从而减少了时间并提高了测试效率。
- Selenium可以与Ant和Maven等框架集成,用于源代码编译。
- Selenium还可以与TestNG等测试框架集成,以进行应用程序测试和生成报告。
- 与其他自动化测试工具相比,Selenium需要的资源更少。
- WebDriver API已经尝试集于Selenium中,这是对Selenium进行的最重要的修改之一。
- Selenium Web驱动程序不需要服务器安装,测试脚本直接与浏览器交互。
- Selenium命令根据不同的类进行分类,使其更易于理解和实现。
- Selenium Remote Control(RC)与WebDriver API一起被称为Selenium 2.0。 此版本旨在支持充满活力的网页和Ajax。
Selenium的局限性主要如下:
- Selenium不支持桌面应用程序的自动化测试。
- Selenium需要高技能才能更有效地自动化测试。
- 由于Selenium是开源软件,因此必须依靠社区论坛来解决技术问题。
- 无法使用Selenium对Web服务(如SOAP或REST)执行自动化测试。
- 使用者应该至少知道或熟悉一种受支持的编程语言,以便在Selenium WebDriver中创建测试脚本。
- 它没有像UTF/QTP这样的内置对象存储库来维护集中位置的对象/元素。但是,可以使用Page Object Model(PO,页面对象模型)克服此限制。
- Selenium没有任何内置的报告功能; 必须依赖JUnit和TestNG等插件来获取测试报告。
- 无法对图像执行测试。需要将Selenium与Sikuli集成以进行基于图像的测试。
- 与UFT,RFT,SilkTest测试等供应商工具相比,在Selenium中创建测试环境需要更多时间。
- 新功能没有人可能少人使用,它们可能会也可能不会正常工作。
- Selenium不为测试管理提供任何测试工具集成。