JavaSelenium(1)-selenium简介
1.自动化测试目标:
1)提高测试人员的工作效率,从而减少手工测试中的重复工作
2)提高测试用例的执行效率,实现快速的自动化回归测试,快速的给予开发团队质量反馈。
3)减少测试人员数量,节省企业的人力成本
4)在线产品的运行状态监控:
通过编写自动化测试脚本测试产品的主要功能逻辑,定时运行测试脚本检查产品系统是否依旧
可以正常工作,如发现问题并多次运行确认后,自动给相关人员发送报警邮件和短信。
5)插入大量的测试数据
此方式的优点是可以真正模拟用户插入数据的行为,保证数据插入的准确性和完整性。
2.自动化测试误区:
1)自动化测试不会发现更多bug
3.敏捷开发中的自动化测试应用:
在敏捷开发模式下,通过自动化测试进行回归测试,从而验证所有代码修改没有影响到以前版本的功能。
敏捷开发中的测试可以从3个层级进行:

从中单元测试的收益最大,接口测试其次,UI测试的收益最小,但UI层对于用户来说却是最直观的,因此该层级也要进行一定
程度的自动化测试,从而尽可能的模拟用户的各种真实操作,确保用户的最佳产品体验。
4.适合自动化项目具备要素:
1)软件需求变动不频繁
2) 项目周期较长
3) 自动化测试脚本可重复使用
5.Selenium工具:
1)什么是selenium:
Selenium主要用于web应用程序的自动化测试,但并不局限于此,它还支持所有基于web的管理任务自动化。
2)特点:
开源,免费;
多浏览器支持:Firefox,Chrome,IE,Opera,Edge;
多平台支持:linux,Windows,MAC;
多语言支持:Java,Python,Ruby,C#,JavaScript,C++;
对Web页面有良好的支持
简单,灵活
支持分布式测试用例执行
3)selenium组成:
Selenium经历了两个版本,Selenium1.0和Selenium2.0,Selenium不是由单独一个工具构成的,而是由一些插件,类库组成,每个部分都有其特点和应用场景,Selenium1.0家谱,如下图:

Selenium IDE
Selenium IDE是嵌入到Firefox浏览器中的一个插件,实现简单的浏览器操作的录制与回放功能。那么什么情况下用到它呢?快速地创建bug重现脚本,测试过程中,发现bug之后可以通过IDE将重现的步骤录制下来,以帮助开发人员更容易的重现bug。同时Selenium IDE录制的脚本可以转换成多种语言,从而帮助我们快速的开发脚本。
Selenium Grid
Selenium Grid是一种自动化的测试辅助工具,能加快Web-App的功能测试。利用Grid可以很方便的实现在多台机器上和异构环境中运行测试用例,即可以在多个环境以并发的方式执行测试脚本,实现测试脚本的并发执行,缩短大量测试脚本的执行时间。
Selenium RC
Selenium RC是selenium家族核心部分。Selenium RC支持多种不同的语言编写自动化测死脚本,通过SeleniumRC的服务器作为代理服务器去访问应用,从而达到测试的目的。
Selenium RC分为Client Libraries和Selenium Server。Client Libraries库主要用于编写测试脚本,用来控制Selenium Server的库。Selenium Server负责控制浏览器行为。Selenium Server包含三部分:Launcher,Http Proxy和Core。其中,Selenium Core是被Selenium Server嵌入到浏览器页面中的,其实Selenium Core就是一堆JavaScript函数的集合,即通过这些JavaScript函数,我们才可以实现用程序对浏览器进行操作。Launcher用于启动浏览器,把Selenium Core加载到浏览器页面当中,并把浏览器的代理设置为Selenium Server的Http Proxy。
Selenium 2.0
Selenium 2.0= selenium1.0+webdriver
Selenium2.0中主推的WebDriver,可以将其看作Selenium RC的替代品,那么Selenium RC与WebDriver有什么区别呢?
Selenium RC是在浏览器中运行JavaScript应用,使用浏览器内置的JavaScript翻译器来翻译和执行selenese命令(selenese是selenium命令集合)
WebDriver是通过原生浏览器支持或者浏览器扩展来直接控制浏览器。Webdriver针对各个浏览器而开发,避免了JavaScript安全模型导致的限制,WebDriver还利用操作系统级的调用,模拟用户输入。
浙公网安备 33010602011771号