`
阅读更多

先来介绍下Selenium Core

Selenium Core 是一个用来测试 Web 应用的测试工具。Selenium Core的测试直接运行在浏览器中,就像真实的用户在操作一样。它可以分别运行在 WindowsLinux Macintosh 系统的 Internet ExplorerMozilla Firefox 浏览器中。

浏览器兼容性测试 测试你的应用看是否可以在不同的操作系统的不同浏览器上正常工作。同样的脚本可以运行在任何 Selenium 平台上。

系统功能测试 创建回归测试用来检验应用的功能以及用户的满意度。

Selenium Core 使用了一个独特的机制让它可以运行在如此多的平台。测试脚本采用纯JavaScriptDHTML写成,你将 Selenium Core 的测试脚本直接放置到你的应用程序所在的 Web 服务器中,就可以在客户端使用任何受支持的浏览器运行测试了。

Selenium 使用 JavaScript Iframe 自动化的测试引擎嵌入到你的浏览器中。这项技术应该可以工作在任何启用 JavaScript 的浏览器中。因为不同的浏览器处理 JavaScript 有些不同,所以我们通常不得不调整引擎以便更广泛的支持 WindowsMac OS X Linux 上的不同浏览器。

下面说下运行Selenium Core需要的环境:

l         Open QA下载最新的Selenium Coreselenium-core-0.8.2.zip

l         把下载的selenium-core-0.8.2.zip解压到你的web服务器中,下面我将在Tomcat中演示。

安装步骤:

第一步:去apache.org下载tomcat安装包。

第二步:正确安装tomcat

第三步:去Open QA下载Selenium Core

第四步:解压Selenium Core包到D:\selenium

第五步:配置tomcat文件,配置一个sc.xml,其他配置项为<Context path="/sc" docBase="D:/selenium/selenium-core-0.8.2" debug="0" privileged="true">

第六步:运行tomcat服务

第七步:打开浏览器,输入:http://localhost:8080/sc/

这时你能看到下图界面:

 

 

这时说明Selenium Core已经运行正常。

我们可以做一个Selenium Core自带的小例子进行测试。

点击Selenium TestRunner进入Selenium Core主界面

 

 

点击Go,进入Test Suite界面

 

 

点击左边单个的test case,我们能进入查看和运行相应的单个test。点击中间test case的步骤,能增加或删除断点。测试的应用程序界面,将展示在下部。如下图:

 

 

下面介绍下下部右边的按钮功能:

l          Execute Tests下四个按钮 分别表示运行所有Test Suite、运行选中的Test Suite、暂停或继续、下一步

l         表示运行Test Suite度的快慢

l          Highlight elements选中表示运行的进程将高亮显示

l         Tools下两个按钮分别表示浏览你的界面结构、查看一些错误信息

讲到这里,估计大家都会怎么来初步运行Selenium Core了。Selenium Core的安装就讲到这里。以后再深入来介绍Selenium Core的具体用法。

 

这些是收集起来的关于Selenium Core的常见问题列表。我们鼓励人们丰富这个列表并对列出的内容进行回馈:

  1. Selenium是用来做什么的?
    • 它用来对Web应用程序做功能或系统测试。这些测试有些时候也被称作接收测试/用户测试/集成测试。Selenium不止意味着单元测试。
  2. 为什么我不能让Selenium Core在Google上工作? - 我尝试写一个简单的脚本进行google搜索。我遇到了各种各样的问题。它在你那里可以工作么?这是我的测试:
    Test Type   
    open http://www.google.com/  
    type q testing tools
    click submitButton  
    • 简单的回答是因为所有浏览器的JavaScript引擎内建的跨站点脚本安全策略,你不能编辑其它域内的网页的内容。外部的页可以正确的在test runner窗口中看到,但是Selenium不能查询或者编辑它里面的内容。
      换句话说,你不能在"foo.com"运行selenium来测试和编辑"bar.com"上的值或着电击上面的按钮。所以,在当前的方式下,你不能给google写"脚本"因为你的脚本并没有放在google.com。如果Selenium和你在测试的应用程序在同一个域中,当然,你就不会遇到跨站点脚本安全问题造成的功能限制了。
      • 你可以在这里阅读到更多源于跨站点脚本的问题:开发文档
  3. 我如何在外域或者远程的服务器上运行我的测试脚本,绕过跨站脚本安全问题?
    • 这里有几种方法可以绕过跨站脚本安全(限制):
      • 如果可能,部署将Selenium Core和你的测试部署在你正在测试的应用程序里面。
      • 或者:使用 Selenium IDE 运行你的自动化测试。Selenium IDE是一个firefox扩展(插件),(它以"chrome" url方式运行)这样它不受浏览器的安全限制。
      • 或者:使用 Selenium Remote Control 运行你的测试。Selenium Remote Control提供一个配置在客户端的代理,来欺骗浏览器,使其认为应用程序和测试工具(脚本)来自同一个域。
      • 或者:让Selenium作为"HTA"应用程序运行,或者在Internet Explorer中作为"HTML Application"运行。HTA应用运行于与其它受信的客户端应用程序相同的安全上下文中,所以不会受到跨域脚本的安全限制。(你可以在这里得到更多消息:MSDN
      • 还有,请查看相关的问题:"为什么我不能给google.com写脚本"。
  4. 你如何创建测试表格?
    • The developers on the Selenium project use Mozilla Composer to create plain HTML text files for their
      tests. By default, Mozilla Composer writes very clean HTML without any extra, unnecessary markup.
      • You can also use Selenium IDE to write your tests scripts.
      • Another option is any text/html editor to create test tables. Future versions of Selenium may support RST (ReStructred Text), or wiki-table syntax, natively. However, you are free to use another format now, as long as you remember to generate the HTML files from your source files, either during your build process or dynamically at run-time.
  5. So I was able to deploy Selenium and my app showed up in the TestRunner, but my tests are failing with no errors, what gives?

分享到:
评论

相关推荐

    Selenium Core实例所用的JavaScript代码

    Selenium Core实例所用的JavaScript代码

    selenium-core-0.8.2.zip

    Selenium Core 是一个用来测试 Web 应用的测试工具。Selenium Core的测试直接运行在浏览器中,就像真实的用户在操作一样。它可以分别运行在 Windows,Linux 和 Macintosh 系统的 Internet Explorer,Mozilla 和 Fire...

    Selenium Core安装.docx

    Selenium Core 是一个用来测试 Web 应用的测试工具。Selenium Core的测试直接运行在浏览器中,就像真实的用户在操作一样。它可以分别运行在 Windows,Linux 和 Macintosh 系统的 Internet Explorer,Mozilla 和 Fire...

    selenium-server-standalone-2.25.0.jar

    (4).Selenium Core接收到指令后,执行操作。 (5).浏览器收到新的页面请求信息(因为在(4)中,Selenium Core的操作可能引发新的页面请求),于是发送Http请求,请求新的Web页面。 由于Selenium Server在启动浏览器时...

    selenium私房菜系列

    1.Selenium Core:支持DHTML的测试案例(效果类似数据驱动测试),它是Selenium IDE和Selenium RC的引擎。 2.Selenium IDE:FireFox的一个插件,支持脚本录制。 3.Selenium RC:Selenium Remote Control。后续...

    seleniumwebdriver(python)第三版.rar

    selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作...Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可以用于任何支持JavaScript的浏览器上。

    python中selenium库的基本使用详解

    什么是selenium selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7...Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因

    selenium-server-2.25.0.rar

    Selenium Server主要控制浏览器行为,总的来说,Selenium Server由三部分组成:Launcher、Http Proxy、Selenium Core,其中Selenium Core是在Selenium Server启动浏览器时,嵌入到浏览器中的。Selenium Core是一堆...

    SELENIUM中文教程

    生成的测试脚本可以用Selenium Core手工执行,也能基于Selenium RC放入Java,C#,Ruby的单元测试用例中自动运行。 3. 测试用例调用实际的浏览器(如IE、FireFox)来执行测试。 和有些开源方案自行实现Web解释引擎...

    ThoughtWorks.Selenium.Core

    Selenium

    selenium-core-1.0.1

    Selenium 是 ThoughtWorks 专门为 Web 应用程序编写的一个验收测试工具。 Selenium 测试直接在浏览器中运行,就像真实用户所做的一样。Selenium 测试可以在 Windows、Linux 和 MacintoshAnd 上的 Internet Explorer...

    Selenium_WebDriver_API

    selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作...Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可以用于任何支持JavaScript的浏览器上。

    Seleniumpython编程.rar

    selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作...Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可以用于任何支持JavaScript的浏览器上。

    TRunner:Plack 上的 SeleniumCore

    TRunner - Plack 上的 SeleniumCore 例子 PSGI use Plack::Builder; use File::ShareDir qw/dist_dir/; use MyApp; my $app = MyApp-&gt;run; builder { mount "/selenium" =&gt; builder { my $dist_dir = dist_dir('...

    私房菜(新手入门教程 Selenium).rar

    selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作...Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可以用于任何支持JavaScript的浏览器上。

    selenium-server-3.0.1.jar

    Selenium Server主要控制浏览器行为,总的来说,Selenium Server由三部分组成:Launcher、Http Proxy、Selenium Core,其中Selenium Core是在Selenium Server启动浏览器时,嵌入到浏览器中的。Selenium Core是一堆...

    Selenium学习笔记

    Selenium包括三部分,Selenium core,Selenium IDE和Selenium RC。Selenium core自然就是他的核心代码,Selenium IDE是用JavaScript写成的Firefox插件,可以录制脚本,转换成其他语言,并且回放等。但是喵喵在这里...

    selenium-ide-1.9.0

    Selenium IDE是Firefox的一个插件,是可以进行脚本录制以及案例转换,所以Selenium IDE+Firebug会成为你日后写测试案例的两大助手(IE下可以使用Selenium Core+IEDevelperToolBar)。

    selenium的初级使用说明 - Selenium介绍

    Selenium是ThoughtWorks公司开发的一套基于WEB应用的测试工具,直接运行在浏览器中,模拟用户的操作,主要包括三个部分selenium-IDE,selenium-core,selenium-rc 。它可以被用于单元测试,回归测试,冒烟测试,集成...

    selenium-ide-1.9.0.xpi

    Selenium IDE是Firefox的一个插件,是可以进行脚本录制以及案例转换,所以Selenium IDE+Firebug会成为你日后写测试案例的两大助手(IE下可以使用Selenium Core+IEDevelperToolBar)。

Global site tag (gtag.js) - Google Analytics