Selenium Core

先来介绍下Selenium Core:

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

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

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

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

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

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

l         去Open QA下载最新的Selenium Core包selenium-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?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值