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还利用操作系统级的调用,模拟用户输入。

 

   

posted @ 2016-05-10 18:08  cherishyang  阅读(635)  评论(0)    收藏  举报