`

web test automation test / QTP / IBM RFT / Selenium IDE / IOS appium / AU3

 
阅读更多

Selenium WebDriver / Selenium IDE

http://www.ibm.com/developerworks/cn/web/1306_chenlei_webdriver/

Selenium VS Webdriver

http://www.ibm.com/developerworks/cn/web/1309_fengyq_seleniumvswebdriver/

表 1. WebDriver 查找页面元素
查找方式 描述 举例 (Java)
By.id 以元素的 id 属性来定位页面元素 By.id(“username”)
By.name 以元素的 name 属性来定位页面元素 By.name(“username”)
By.xpath 以 XPath 来定位页面元素 By.xpath(“//*[@id="username"])
By.className 以元素的 class 属性来定位页面元素 By.className(“even-table-row”)
By.cssSelector 基于 CSS 选择器引擎定位页面元素 By.cssSelector(“#username”)
By.LinkText
By.partialLinkText
查找包含链接字串的页面元素 By.linkText(“Click Me!”)
By.partialLinkText(“ck M”)
By.TagName 以元素的标签名称查找页面元素 By.tagName(“td”)

Web 应用程序的自动化测试

如今,大多数的应用软件被写为基于 Web 的应用程序并通过浏览器展示给用户并与之进行交互。不同公司和机构组织都需要测试这些应用程序的有效性。在一个高度交互性和响应的软件流程时代,许多组织倾向于运用敏捷开发理论,自动化测试也就成了必备一项。所谓自动化测试,就是执行自动测试工具或者用某种程序设计语言编写程序,控制被测软件中的各种模块,模拟手动测试步骤,完成测试。测试自动化有很多优点,比如:频繁的回归测试、快速反馈给开发人员、几乎无限的重复测试用例的执行、支持敏捷和极端发展的方法、自定义的缺陷报告、不会错过人工手动测试可能遗漏的缺陷等。目前也有很多商业和开源的软件,可以辅助进行测试自动化的开发。Selenium 应该是应用最为广泛的开源解决方案。

 

Selenium 概述

Selenium 是一个用于 Web 应用程序测试的工具,Selenium 测试直接自动运行在浏览器中,就像真正的用户在手工操作一样。支持的浏览器包括 IE、Chrome 和 Firefox 等。这个工具的主要功能包括:测试与浏览器的兼容性 - 测试您的应用程序看是否能够很好地工作在不同浏览器和操作系统之上;测试系统功能 - 创建回归测试检验软件功能和用户需求;支持自动录制动作,和自动生成 .NET、Perl、Python、Ruby 和 Java 等不同语言的测试脚本。Selenium 是 ThoughtWorks 专门为 Web 应用程序编写的一个验收测试工具。

 

Selenium 2.0 与以往版本的区别

Selenium 2.0(又名 Selenium WebDriver)的主要新功能是集成了 WebDriver。WebDriver 曾经是 Selenium 1(又名 Selenium RC)的竞争对手。Selenium RC 在浏览器中运行 JavaScript 应用,而 WebDriver 通过原生浏览器支持或者浏览器扩展直接控制浏览器。

从 Selenium 项目简史中可以了解到,Selenium 和 WebDriver 的开发人员都认为两个工具各有优势,二者合并将创造更强大的 Web 测试框架。 Selenium 1 是一款流行和完善的测试框架,支持众多浏览器(因其 JavaScript 实现),允许用户通过许多编程语言(从 Java/C# 到 PHP、Erlang...),而 WebDriver 则弥补了 Selenium 1 的缺点,跳出了 JavaScript 的沙箱,提供快速、轻量级的浏览器模拟器。之所以合并,原因如下:

  • WebDriver 解决了 Selenium 存在的缺点(比如,绕过 JS 沙箱);
  • Selenium 解决了 WebDriver 存在的问题(例如支持广泛的浏览器);
  • Selenium 的主要贡献者们都觉得合并项目是为用户提供最优秀框架的最佳途径。

Selenium 2.0 还包括 Selenium Server,通过 Selenium Grid 支持分布式测试。新的 Selenium Grid 支持使用原来的 Selenium RC API 和 WebDriver API 测试。Selenium IDE 1.1.0 也将支持 WebDriver API,包括将录制生成的测试用例导出为 WebDriver 所支持的各种编程语言(Ruby、Python、C# 和 Java)。

WebDriver 针对各个浏览器而开发,取代了 Selenium RC 中嵌入到被测 Web 应用中的 JavaScript,与浏览器的紧密集成可以支持创建更高级的测试,且避免了 JavaScript 安全模型导致的限制。除了来自浏览器厂商的支持,WebDriver 还利用操作系统级的调用模拟用户输入。WebDriver 支持 Firefox (FirefoxDriver)、IE (InternetExplorerDriver)、Opera (OperaDriver) 和 Chrome (ChromeDriver)。它还支持 Android (AndroidDriver) 和 iPhone (IPhoneDriver) 的移动应用测试。此外,还包括一个基于 HtmlUnit 的无界面实现,即 HtmlUnitDriver。WebDriver API 可以通过 Python、Ruby、Java 和 C# 访问,支持开发人员使用他们偏爱的编程语言来创建测试。

 

Selenium 的安装配置

Selenium IDE 的安装

Selenium IDE 是一个 Firefox 插件,是用来开发测试用例的集成开发工具,其简单易用,能够高效的开发测试用例,并可转换成相应的语言脚本。

首先,使用 FireFox,访问 Selenium HQ 下载页面 来下载 Selenium IDE:


图 1. Selenium IDE 下载页面
图 1. Selenium IDE 下载页面 

Firefox 对于一个不信任的插件可能会弹出一个提示,因此需要点击“允许”按钮来继续安装。当下载完成时,会弹出如下页面:


图 2. 安装 Selenium IDE
图 2. 安装 Selenium IDE 

点击安装按钮,安装完成后会提示重启浏览器,完成该操作,Selenium IDE 即安装完毕。如下图所示:


图 3. Selenium IDE
图 3. Selenium IDE 

Selenium 开发环境

首先,在如上下载页面中下载 Selenium WebDriver 运行时可能需要的各种类包:

  • Selenium server 2.25
  • Selenium Client Drivers – Java
  • Selenium Internet Explorer Driver Server – Needed when using IE mode
  • Selenium Chrome driver

本文的集成开发环境选用 Eclipse Java EE IDE Juno ,具体配置如下所示:


图 4. Eclipse 开发环境配置
图 4. Eclipse 开发环境配置 

需要添加 Junit 4 library、Selenium java driver(Selenium-java-2.25.0.jar)、Selenium server(Selenium-server-2.25.0.jar)、其余 jar 包为 Selenium java driver 的依赖类,位于 Selenium java driver zip 包中的 lib 文件夹中。

至此,Web 应用程序的自动化测试开发环境配置完毕。

 

Selenium WebDriver 常用操作

Selenium WebDriver 能够模拟日常的浏览器操作,其中最常用的操作如下:

  1. 访问页面
  2. 与页面交互
  3. 填写表单
  4. 提交页面内容
  5. 检查页面元素是否在页面上
  6. 在窗口和 Frame 之间移动
  7. 弹出对话框
  8. 页面导航

下面本文将通过一个比较完整的示例分别介绍如上所示常用操作的具体应用。代码片段如下:


清单 1. WebDriver 常用操作

				
 1.public void setUp() throws Exception { 
 2.    //driver = new HtmlUnitDriver(); 
 3.     driver = new FirefoxDriver(); 
 4.     baseUrl = "http://www.baidu.com/"; 
 5.     driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); 
 6.} 
 7. 
 8.@Test 
 9.public void testDemo() throws Exception { 
 10.    driver.get(baseUrl + "/"); 
 11.    driver.findElement(By.id("kw")).clear(); 
 12.    driver.findElement(By.id("kw")).sendKeys("百度翻译"); 
 13.    driver.findElement(By.id("su")).click(); 
 14. 
 15.    WebElement element; 
 16.    element = driver.findElement(By.id( "op_tran_text" )); 
 17.    //element = driver.findElement(By.xpath( "//textarea[@id= ’ op_tran_text ’ ]" )); 
 18.    element.clear(); 
 19.    element.sendKeys("自动化测试"); 
 20. 
 21.    WebElement select = driver.findElement(By.xpath( "//select" )); 
 22.    List<WebElement> allOptions = select.findElements(By.tagName( "option" )); 
 23.    for (WebElement option : allOptions) { 
 24.        System.out.println(String.format( "Value is: %s" , \
                  option.getAttribute("value"))); 
 25.        if(option.getText().equals("zh2en")) 
 26.            option.click(); 
 27.    } 
 28. 
 29.    driver.findElement(By.xpath("//a[@class='op_tran_btn OP_LOG_BTN']")).click(); 
 30.    
 31.driver.switchTo().window( "百度在线翻译" ); 
 32.} 

 

清单第 2-3 行定义了所使用的 webdriver 类型,本部分以 HtmlFirefoxDriver 为例:

WebDriver driver = new HtmlFirefoxDriver();

 

对于其他类型的 driver,其操作是一样的,不同 driver 的区别在于模拟何种类型的浏览器。

页面导航

如清单第 10 行所示:

 driver.get(baseUrl + "/"); 

 

完全装载页面后将控制返回给测试脚本。

注意:当页面又很多 Ajax 调用时,该接口无法确认页面是否完全装载,这是需要使用"waits"。

与页面交互

如清单第 11-12、15-19 行所示。

例如:

 <input type= "text" name= "passwd" id= "passwd-id" /> 

 WebElement element; 
 element = driver.findElement(By.id( "passwd-id" )); 
 element = driver.findElement(By.name( "passwd" )); 
 element = driver.findElement(By.xpath( "//input[@id= ’ passwd-id ’ ]" )); 
 //XPATH 返回第一个匹配到的元素,如果没有匹配到,抛出 NoSuchElementException 
 element.sendKeys( "some text" ); 
 element.sendKeys( " and some" , Keys.ARROW_DOWN); // 按向下箭头 ; 任何页面元素都可以调用 sendKeys,
                                   //例如可以测试一些快捷方式键,键盘的每次输入都是附加在文本串的后面;
 element.clear(); // 清除文本域内容

 

填写表单

如清单 21-27 行所示。

  • 处理 SELECT 标签
     WebElement select = driver.findElement(By.xpath( "//select" )); 
     List<WebElement> allOptions = select.findElements(By.tagName("option" )); 
     for(WebElement option : allOptions) { 
    	 System.out.println(String.format( "Value is: %s" , option.getValue())); 
    	 option.setSelected(); 
     } 
    
  • 使用 Select 类处理 SELECT 标签
     Select select = new Select(driver.findElement(By.xpath( "//select" ))); 
     select.deselectAll(); 
     select.selectByVisibleText("Edam"); 
    

提交

如清单第 13、29 行所示。

 driver.findElement(By.id( "submit" )).click(); 
 element.submit();// 要求 element 必须在表单中,否则抛出 NoSuchElementException 

 

检查元素是否在页面上

检查元素是否在页面上是最常用的操作之一,具体用法如下:

 WebElement plain = driver.findElement(By.name( "q" )); 
 RenderedWebElement element = (RenderedWebElement) element;// 例如 HtmlUnit Driver 就无法显示出内容

 

对元素拖拉:

RenderedWebElement element = (RenderedWebElement) driver.findElement(\
                                                       By.name( "source" )); 
RenderedWebElement target = (RenderedWebElement) driver.findElement(\
                                                       By.name( "target" )); 
element.dragAndDropOn(target); 

 

在窗口和 frame 之间移动

如清单第 31 行所示

  • 在命名的窗口之间移动
     driver.switchTo().window( "windowName" ); // 可以通过 js 或者打开窗口的链接获取窗口名称
    
  • 通过窗口句柄切换
     for (String handle : driver.getWindowHandles()) { 
    	 driver.switchTo().window(handle); 
     } 
    
  • frame 之间切换或者切换到 iframe
     driver.switchTo().frame( "frameName" ); 
     通过索引访问 subframe:
     driver.switchTo().frame( "frameName.0.child" );//frameName 的第一个 subframe 
                                                    //的明价 child 的 frame 
    

弹出对话框

窗口弹出后,可以使用如下语句访问到弹出窗口:

 Alert alert = driver.switchTo().alert(); 

 

获取到 alert 窗口后,可进行各种操作。

页面导航

navigate().to() 和 get() 功能完全一样。

 driver.navigate().to( "http://www.example.com" ); 

 

浏览器的前进和后退 :

 driver.navigate().forward(); 
 driver.navigate().back(); 

 

注意这两个方法取决于浏览器的实现,可以会出现某些调用失败。

 

结合 Selenium IDE,用实例展示自动化测试的构建

本部分将结合实际案例来展示自动化测试的构建。

Selenium IDE 使用和脚本转换

打开 FireFox 浏览器,如上图 3 所示,打开 Selenium IDE 窗口:


图 5. Selenium IDE 窗口
图 5. Selenium IDE 窗口 

下面开始录制第一个基于浏览器的自动化脚本:

  1. 点击 File 菜单,弹出下拉列表,选择 New Test Case,此时左中部 Test Case 窗口会增加一个 Untitle 2 的测试案例,右键点击'Property',在弹出窗口中重命名为”TestDemo”
  2. 点击 IDE 的右上部录制按钮(小红点)开始手动录制,在 FireFox 中打开新的 tab 页,输入测试网址 www.baidu.com,在检索框中输入要查询的内容“Selenium”,点击“百度一下”按钮;
  3. 在结果页,第一条结果就是 Selenium 的官方网站,点击链接进入;
  4. 待进入 Selenium 官方网站之后,切换到 Selenium IDE 窗口,点击录制按钮(小红点),结束本次手动录制;此时 Selenium IDE 窗口如下图 6 所示;
  5. 点击 File 菜单,选择“Save Test Case”,填写文件名称“TestDemo”,手动录制的脚本会存为本地 HTML 格式文件,此文件可以在其他 Selenium IDE 中导入使用;

有了以上录制的脚本,可以在 Selenium 中回放,选择 TestDemo 脚本,点击中上部的“Play current test case”按钮(第二个绿色三角按钮),此时,浏览器会按照录制的顺序自动操作执行。由此可见,Selenium IDE 在 Web 应用测试中,可以代替人的大量手工操作。


图 6. 脚本录制
图 6. 脚本录制 

红色方框所圈定的部分即为 Selenium 的操作记录,此处也可以手动添加、删除、更改命令。

有了手动录制的脚本,可以转换成多种语言的程序脚本:

  1. 在 selenium IDE 中,选中一个 Test Case,点击 File 菜单,下拉列表中选择“Export Test Case As”-“Java / Junit 4 / WebDriver”;
  2. 在弹出的保存窗口中,输入类名称 TestDemo,保存;TestDemo.java 文件生成。对于生成的 java 自动化测试脚本,有些可能不能成功执行,需要手动稍微调整。

编写第一个 Selenium 自动化测试脚本

打开上述所配置的 Eclipse 开发环境,新建一个 Java 工程,将上述转换而成的 TestDemo.java 文件导入到该工程中,去除冗余的“Organize Import(Ctrl + Shift + O) ”。如图 7 所示:


图 7. 集成开发环境中的代码
图 7. 集成开发环境中的代码 

代码第 21 行可见,自动导出的代码默认采用 FireFox 浏览器。执行此代码,Selenium 会自动触发开启 FireFox 浏览器,打开一个新的页面,进入百度首页,在检索框中自动输入“Selenium”关键字,自动点击“百度一下”按钮,进入搜索结果页面,定位到第一条检索结果,然后点击进入 Selenium 官网,自动关闭浏览器,此时 Eclipse 开发环境,JUnit 结果页面显示出来,如图 8 所示:


图 8. 自动化运行结果
图 8. 自动化运行结果 

不同版本的 WebDriver 实现跨浏览器测试

实现跨浏览器测试,关键在于中选择哪种 WebDriver。

对于 IE 和 Chrome 浏览器

在此以 IE 浏览器为例,更新图 7 所示代码第 21 行为 driver = new InternetExplorerDriver();

运行更新后的自动化脚本,selenium 自动启动 IE 浏览器进行自动化测试。如图 9 所示:


图 9. IE 浏览器自动化测试
对于模拟浏览器 

对于模拟浏览器

Selenium 中提供了 Java 实现的虚拟浏览器,选用此驱动,程序会模拟浏览器的行为进行测试,测试过程中并无实际浏览器被调用。

更新 driver = new HtmlUnitDriver(); 运行该脚本,所有浏览器行为在后台模拟运行。

 

结束语

综上所述,本文由浅入深,由 Selenium WebDriver 的基本概念着手,详细阐述其与以往版本的不同之处,并结合实际案例,展示了 Selenium 实现 Web 应用自动化测试的过程。用户按照本文介绍的步骤和方法,即可构件出第一个自动化测试案例。随着学习的深入,相信基于 Selenium WebDriver 的自动化测试应用到实际项目中,一定能够极大提高工作效率。

 

参考资料

学习

 

IBM RFT  / IBM Rational Functional Tester

IBM Rational Functional Tester(简称RFT)是一款先进的、自动化的功能和回归测试工具,它适用于测试人员和GUI开发人员。使用它,测试新手可以简化复杂的测试任务,很快上手;测试专家能够通过选择工业标准化的脚本语言,实现各种高级定制功能。通过IBM的最新专利技术,例如基于Wizard的智能数据驱动的软件测试技术、提高测试脚本重用的ScriptAssurance技术等等,大大提高了脚本的易用性和可维护能力。同时,它第一次为Java和Web测试人员,提供了和开发人员同样的操作平台(Eclipse),并通过提供与IBM Rational整个测试生命周期软件的完美集成,真正实现了一个平台统一整个软件开发团队的能力。

 

Rational Functional Tester 的基础是针对于Java、.NET的对象技术和基于 Web 应用程序的录制、回放功能。工具为测试者的活动提供的自动化的帮助,如数据驱动测试。

当您记录脚本时,Rational Functional Tester 会为被测的应用程序自动创建测试对象地图。对象地图中包含了对每个对象的识别属性。当您在对象地图中更新记录信息时,任何使用了该对象地图的脚本会共享更新的信息,减少了维护的成本及整个脚本开发的复杂度。对象地图还为您提供快速的方法向脚本中添加对象。它列出应用程序中涉及到的测试对象,不论它们当前是否可视。您可以通过依据现有地图或按需添加对象来创建新的测试对象地图。

在记录过程中您可以将验证点插入到脚本中以确定在被测应用程序建立过程中对象的状态。验证点获取对象信息(根据验证点的类型,可以是对象属性验证点或五种数据验证点之一 -- 菜单层次、表格、文本、树形层次,或列表)并在基本数据文件中存储。文件中的信息成为随后的建立过程中对象的期望状态。在执行完测试之后,您可以使用验证点比较器(Verification Point Comparator) 进行分析,并且如果对象的行为变化了就更新基线(期望的对象状态)。

Rational Functional Tester 还提供这些强大的功能:

回放更新的应用程序脚本。ScriptAssure 特性是 Rational Functional Tester 的对象识别技术,可以使您成功地回放脚本,甚至在您的被测应用程序已经更新的时候。您可以为测试对象必须通过的、用来作为识别候选的识别记分设置门槛,并且如果 Rational Functional Tester 接受了一个分值高于指定门槛的候选,您还可以向日志文件中写入警告。

更新对象的识别属性。在测试对象地图中,您可以对所选的测试对象更新识别到的属性。Rational Functional Tester 显示了 Update Recognition Properties 页,其显示出更新的测试对象属性、原始的识别属性和对象所有的识别属性。如果必要,您可以修改更新的识别属性。

合并多个测试对象地图。对象地图要么是共享的要么是专用的。专用地图附属于一个脚本并只由具体的脚本进行访问,反之,共享的地图由多个脚本共享。共享地图的优势是,当需要更新对象时,只有对应一个地图的一个更新会确定多个脚本。您可以在 Rational Functional Tester 的项目视图中并且在创建新测试对象地图时,将多个私有的或共享的测试对象地图合并成一个单个的共享测试对象地图。Rational Functional Tester 可以随意地更新您所选择的指向新合并的测试对象地图的脚本。

显示相关的脚本。在测试对象地图中,您可以观察到一列表与地图相关的脚本,且可以使用该列表来选择要添加测试对象的多个脚本。

使用基于模式的对象识别。您可以用正则表达式或一个数值范围来代替允许基于模式的识别。允许对象识别具有更好的灵活性。您可以将属性转变成验证点编辑器(Verification Point Editor) 或测试对象地图中的正则表达式和数值范围。正则表达式计算器(Regular Expression Evaluator) 允许您在编辑表达式时进行测试,这节省下了不得不运行脚本观察模式是否工作的时间。

集成 UCM。Rational Functional Tester 在 ClearCase统一变更管理(Unified Change Management,UCM)的视图中。Rational Functional Tester 中创建的工件是可以进行版本控制的。

 

Rational Functional Tester 的两个版本共享这些基本特性,且都为已知的被测应用程序生成(一般来说)同样的脚本。重要的是要注意,因为它您在任何已知时间选择任何一个最适合您需要的环境或语言。如果您现在开始使用 Rational Functional Tester 的 Visual Basic .NET 版本,而在六个月后您想转换成 Java 的版本,您不需要学习完全不同的工具。两个版本基本上一致,您可以对一个工具中的任何投资(时间或金钱)都能够沿用到另一个工具中。为了证明这点,本章节将带您在每个环境中进行记录并执行实例脚本,并在最后比较结果脚本。依照任何一个此时适合您需要环境的步骤,并对比另一个环境的步骤以了解这些步骤有多么类似。

 

wuqiang qq:1332326

fumaoqiang qq:281788398

ligaowei 138-1736-6546 

wangdan 139-6714-2900

 

 

IOS 自动化测试工具

http://huangqinqin.iteye.com/blog/1770601

1:Monkeytalk

2: Calabash

3:UI Automation tool  

http://blog.manbolo.com/2012/04/08/ios-automated-tests-with-uiautomation

4:TestStudio by Telerik

5:Frank

6:SOASTA  / 通联金融科技与SOASTA公司签订了长期战略合作协议,提供市场上领先的基于云计算网络和移动应用的测试平台,为用户享用云测试这一创新型云服务提供帮助。

7:Appium

https://github.com/appium/appium

http://appium.io/slate/cn/v1.4.0/#

针对开发者的 20 款移动开发框架

http://www.iteye.com/news/28022

Appium是一款开源自动化测试工具。可对任何语言的iOS应用和Android应用进行测试,测试可使用Java、Objective-C、JavaScript、PHP、Python、Ruby、C#、Clojure、Perl等众多语言编写。目前只针对Mac OS X ,且需要有Node.js来支撑。Appium 是一个自动化测试开源工具,支持 iOS 平台和 Android 平台上的原生应用,web 应用和混合应用。 所谓的“移动原生应用”是指那些用 iOS 或者 Android SDK 写的应用。所谓的“移动 web 应用”是指使用移动浏览器访问的应用(Appium 支持 iOS 上的 Safari 和 Android 上的 Chrome)。所谓的“混合应用”是指原生代码封装网页视图——原生代码和 web 内容交互。比如,像 Phonegap,可以帮助开发者使用网页技术开发应用,然后用原生代码封装,这些就是混合应用。 重要的是,Appium 是一个跨平台的工具:它允许测试人员在不同的平台(iOS,Android)使用同一套API来写自动化测试脚本,这样大大增加了 iOS 和 Android 测试套件间代码的复用性。 想知道 Appium 如何支持平台,版本和自动化形态的详细信息,请参见platform support doc。

 

 

第三届ATI自动化荣誉

http://xitong.iteye.com/blog/1822039

ATI自动化荣誉奖,庆祝卓越的软件测试自动化专业。在自动化领域,通过投票的方式来选择你所认

可的获奖者,并于2011年/ATI的测试和测试自动化大会宣布获奖者名单。下面列出了部分获奖者和入围者

1、最佳的开源单元自动化测试工具

1、1 C++类

冠军:Google C++ TestingFramework 生产者:Google

亚军:Automated Test Framework 生产者:N/A

入围:Boost TestLibrary 生产者:Dave Abrahams

入围:cfix 生产者:Johannes Passing

1、2 java类

冠军:JUnit 生产者:David Saff,Erich Gamma,Erik G.H. Meade,Kent Beck

亚军:TestNG 生产者:Cedric Beust

入围:UISpec4J 生产者:Regis Medina,Pascal Pratmaryrty

1、3 .net类

冠军:NUnit 生产者:Charlie Poole

入围:MbUnit.net 生产者:Johan Appelgren,Jeff Brown,Joey Calisay

入围:xUnit.net 生产者:Brad Wilson,Jim NewKirK

1、4 总体

冠军:JUnit 生产者:David Saff,Erich Gamma,Erik G.H.Meade,Kent Beck

亚军:NUnit 生产者:Charlie Poole

入围:Google C++ Testing Framework 生产者:Google

入围:TestNG 生产者:Cedric Beust

2、最佳的开源功能自动化测试工具

2、1 WEB网络

冠军:Selenium 生产者:OpenQA

亚军:TestMarker 生产者: PustToTest

入围:Sahi 生产者:Tyto Software

入围:Watir 生产者:Bret Pettichord

2、2 java类

冠军:Selenium 生产者:OpenQA

亚军:SWTBot 生产者: Ketan Pandegaonkar

入围:T-Plan Robot 生产者:T-Plan Ltd.

入围:Jemmy 生产者:Alexandre(Shura)lline

2、3 Flash/Flex类

冠军:Flex Monkey 生产者:Gorilla Logic

入围:Melomel 生产者:Ben Johnson

入围:TestMaker 生产者:PustToTest

2、4 总体

冠军:Selenium 生产者:OpenQA

亚军: FlexMonkey 生产者:Gorilla Logic

入围:TestMaker 生产者:PustToTest

入围:T-Plan Robot 生产者:T-Plan Ltd.

3、最佳的开源性能自动化测试工具

3、1 WEB网络 

冠军:JMeter 生产者:Apache Software Foundation

入围:TheGrinder 生产者:Philip Aston

入围:Hammerora 生产者:Steve Shaw

3、2 网络服务/SOA类

冠军:SoapUI 生产者:SmartBear Software

入围:JMeter 生产者:Apache Software Foundation

入围:TheGrinder 生产者:Philip Aston

3、3 总体

冠军:JMeter 生产者:Apache Software Foundation

亚军: SoapUIPro 生产者:SmartBear Software

入围:TheGrinder 生产者:Philip Aston

入围:Hammerora 生产者:Steve Shaw

4、最佳的商业功能自动化测试工具

4、1 WEB网络

冠军:QuickTest Pro(HPFuncional Tester) 生产者:HewlettPackard 所属公司:hp

亚军: TestStudio 生产者:Telerik 所属公司:telerik

入围:SilkTest 生产者:Micro Focus 所属公司:MICRO FOCUS

入围:Pational Functional Tester 生产者:IBM 所属公司:IBM

4、2 java类 

冠军:TestComplete 生产者:SmartBear Software 所属公司:SmartBear

亚军: QuickTest Pro(HP Funcional Tester) 生产者:Hewlett 所属公司:hp

入围:TestDrive 生产者:Original Software 所属公司:Original Software

入围:Twist 生产者:ThoughtWorks 所属公司:ThoughtWorks studios

入围:QAWizard 生产者:Seapine Software

4、3 .net类

冠军:Ranorex 生产者:Ranorex GmbH 所属公司:Ranorex

亚军: TestStudio 生产者:Telerik 所属公司:telerik

入围:Certify 生产者:Worksoft 所属公司:WORKSOFT

入围:SilkTest 生产者:Micro Focus 所属公司:MICRO FOCUS

4、4 Flash/Flex类

冠军:Ranorex 生产者:Ranorex GmbH 所属公司:Ranorex

亚军:TestDrive 生产者:Original Software 所属公司:Original Software

入围:RIATest 生产者:Conitek Inc. 所属公司:riatest

入围:eggPlant 生产者:Testplant 所属公司:eggPlant

4、5 网络服务/SOA类

冠军:SilkPerformer forSoapUI Pro SOA 生产者:Micro Focus 所属公司:MICROFOCUS

亚军:SoapUIPro 生产者:SmartBear Software 所属公司:SmartBear Software

入围:TestDrive 生产者:Original Software 所属公司:OriginalSoftware

入围:SOATest 生产者:Parasoft

4、6 SAP类

冠军:Certify 生产者:Worksoft 所属公司:WORKSOFT

入围:QuickTest Pro(HP Funcional Tester) 生产者:Hewlett Packard 所属公司:hp

入围:Pational Functional Tester 生产者:IBM 所属公司:IBM

4、7 总体

冠军:QuickTest Pro(HPFuncional Tester) 生产者:HewlettPackard 所属公司:hp

亚军: TestComplete 生产者:SmartBear Software 所属公司:SmartBear

入围:Pational Functional Tester 生产者:IBM 所属公司:IBM

入围:Ranorex 生产者:Ranorex GmbH 所属公司:Ranorex

入围:SilkTest 生产者:Micro Focus 所属公司:MICRO FOCUS

5、最佳商业性能自动化测试工具

5、1 网络/HTTPS

冠军:loadrunner 生产者:Hewlett Packard GmbH 所属公司:hp

亚军:SilkPerformer 生产者:Micro Focus 所属公司:MICRO FOCUS

入围:Pational Functional Tester 生产者:IBM 所属公司:IBM

入围:AQTime 生产者:SmartBear Software 所属公司:SmartBear

5、2 网络服务/SOA

冠军:loadrunner 生产者:Hewlett Packard GmbH 所属公司:hp

亚军: SOAPUIPro 生产者:SmartBear Software 所属公司:SmartBear

入围:SilkPerformer 生产者:Micro Focus 所属公司:MICRO FOCUS

入围:SOATest 生产者:Parasoft

5、3 总体

冠军:loadrunner 生产者:Hewlett Packard GmbH 所属公司:hp

亚军:SilkPerformer 生产者:Micro Focus 所属公司:MICRO FOCUS

入围:Pational Functional Tester 生产者:IBM 所属公司:IBM

入围:AQTime 生产者:SmartBear Software 所属公司:SmartBear

6、最佳自动化测试书

冠军:Continuous Delivery: Reliable Software Releases throughBuild,Test,and Deplayment Automation 生产者:Jez Humble andDavid Farley 链接:http://www.amazon.com/Continuous-Delivery-Deployment-Automation-Addison-Wesley/dp/0321601912

入围:Software Testing with Visual Studio 2010(Microsoft.netDevelopment Series) 生产者:JeffLevinson 链接:http://www.amazon.com/Software-Testing-Visual-Microsoft-Development/dp/0321734483

入围:Selenium1.0 Testing Tools:Beginner'sGuide 生产者:DavidBurns 链接:https://www.packtpub.com/selenium-1-0-testing-tools-beginners-guide/book

7、最佳自动化测试介绍

冠军:Making Test Automation Work on AgileProjects 生产者:Lisa Crispin

入围:Exploratory Test Automation inBing 生产者:Harry Robinson

入围:Automated Testing in an iosWord 生产者:Eric Bariaux

8、最佳自动化测试文章

冠军:Development's role in software testAutomation 生产者:Linda Hayes

亚军: Technical vs.Non-Technical Skills In Test Automation 生产者:Dorothy Graham

入围:Continuous Integration andAutomation 生产者:Eric Pugh

入围:Test automation:Businessdisposable test assets 生产者:George Wilson

入围:UI Automation Beneath the PresentationLayer 生产者:BJ Rollison

9、最佳自动化测试博客

冠军:Automated Testing andQA 生产者:Peter Kartashow

入围:Software Functional TestAutomation 生产者:Mahesh Narayanan

入围:Testlabs.com 生产者:Philip Aston

10、最佳自动化测试论坛 

冠军:SQAFornums 生产者:BetaSoft Inc. 链接:http://www.qaforums.com/

亚军: One Stop Testing 生产者:Vyom TechnosoftPvt.Ltd 链接:http://www.onestoptesting.com/

入围:AdvancedQTPForum 生产者:SOLMAR Knowledge Networks 链接:http://www.advancedqtp.com/forums/

入围:TekTips 生产者:Tecumseh Group

 

 

QTP视频汇总

http://www.51testing.com/?uid-157452-action-spacelist-type-blog-itemtypeid-19427

1. 小布 作品QTP 培训 系列 - 1
QTP的概述
在线观看:http://www.boobooke .com/v/bbk3207

2. 小布作品:QTP培训系列 - 2
讲解了QTP的测试规划
在线观看:http://www.boobooke.com/v/bbk3302

2. 小布作品:QTP培训系列 - 3
继续介绍QTP的测试规划
在线观看: http://www.boobooke.com/v/bbk3303

4. 小布作品:QTP培训系列 - 4
QTP录制 之前的注意要点
在线观看:http://www.boobooke.com/v/bbk3307

5. 小布作品:QTP培训系列 - 5
介绍QTP录制和回放
在线观看: http://www.boobooke.com/v/bbk3308

6. 小布作品:QTP培训系列 - 6
介绍QTP的对象库
在线观看: http://www.boobooke.com/v/bbk3309

7 小布作品:QTP培训系列 - 7
继续介绍QTP的对象库
在线观看: http://www.boobooke.com/v/bbk3310

8. 小布作品:QTP培训系列 - 8
介绍QTP的同步点
在线观看:http://www.boobooke.com/v/bbk3311

9. 小布作品:QTP培训系列 - 9
介绍QTP的检查点
在线观看:http://www.boobooke.com/v/bbk3312

10. 小布作品:QTP培训系列 - 10
继续介绍QTP的检查点
在线观看: http://www.boobooke.com/v/bbk3313
 
小生老师讲QTP实战
http://www.boobooke.com/v/bbk2085/

《零基础学习软件测试 》系列视频之 QTP使用指南 (全)

1 qtp目录分析
http://www.boobooke .com/v/bbk1590


2 qtp界面分析
http://www.boobooke.com/v/bbk1594

3 qtp示例程序分析
http://www.boobooke.com/v/bbk1598

4 qtp学习指南
http://www.boobooke.com/v/bbk1515

5 qtp基本操作录制 与回放
http://www.boobooke.com/v/bbk1591

6 qtp的三种录制方式
http://www.boobooke.com/v/bbk1516

7 增强help步骤
http://www.boobooke.com/v/bbk1592

8 checkpoint
http://www.boobooke.com/v/bbk1595

9 参数化
http://www.boobooke.com/v/bbk1599

10 Tools下的工具 介绍
http://www.boobooke.com/v/bbk1589

11 qtp插件分析
http://www.boobooke.com/v/bbk1689

12 qtp测试用例设计考题
http://www.boobooke.com/v/bbk1575

13 vbs
http://www.boobooke.com/v/bbk1621

14 recovery Scenarios
http://www.boobooke.com/v/bbk1692

15 虚拟对象
http://www.boobooke.com/v/bbk1695

16 专家视图测试脚本 开发
http://www.boobooke.com/v/bbk1690

17 qtp描述性编程
http://www.boobooke.com/v/bbk1691

18 qtp测试脚本编写规范
http://www.boobooke.com/v/bbk1693

19 如何建立自动化测试框架
http://www.boobooke.com/v/bbk2097

20 QTP之焦点
http://www.boobooke.com/v/bbk2146

21 手工测试 PK 自动化测试
http://www.boobooke.com/v/bbk2148

22 QTP使用指南第一部分基础知识讲解完结篇
http://www.boobooke.com/v/bbk2147

 吴强wuqiang qq:1332326

 

AU3 /  AutoIt / 自动化软件安装工具

http://www.autoitscript.com/files/autoit3/autoit-v3-setup.exe

http://www.autoitscript.com/site/autoit/downloads/

http://baike.baidu.com/view/1539635.htm

http://baike.baidu.com/view/239490.htm

http://www.autoitx.com/

AutoIt 目前最新是v3版本,这是一个使用类似BASIC脚本语言的免费软件,它设计用于Windows GUI(图形用户界面)中进行自动化操作。它利用模拟键盘按键,鼠标移动和窗口/控件的组合来实现自动化任务。而这是其它语言不可能做到或无可靠方法实现的(例如VBScript和SendKeys).

AutoIt v3 is a freeware BASIC-like scripting language designed for automating the Windows GUI and general scripting. It uses a combination of simulated keystrokes, mouse movement and window/control manipulation in order to automate tasks in a way not possible or reliable with other languages (e.g. VBScript and SendKeys). AutoIt is also very small, self-contained and will run on all versions of Windows out-of-the-box with no annoying “runtimes” required!

AutoIt was initially designed for PC “roll out” situations to reliably automate and configure thousands of PCs. Over time it has become a powerful language that supports complex expressions, user functions, loops and everything else that veteran scripters would expect.

 

spy ++ / Microsoft Visual Studio.NET 2003 工具集

http://baike.baidu.com/view/2258859.htm

Spy++ (SPYXX.EXE) 是一个() 的实用工具,它提供系统的进程、线程、窗口和窗口消息的图形视图。使用 Spy++ 可以执行下列操作: 显示系统对象(包括进程、线程和窗口)之间关系的图形树。 搜索指定的窗口、线程、进程或消息。 查看选定的窗口、线程、进程或消息的属性。 直接从视图中选择窗口、线程、进程或消息。 通过鼠标定位,使用查找程序工具选择窗口。 使用复杂的消息日志选择参数设置消息选项。 提示使用 Spy++ 时,在许多实例中都可以单击鼠标右键显示常用命令的弹出式菜单。命令是否可用取决于指针的位置。例如,如果在指向窗口视图中的某项时单击并且选定的窗口可见,则弹出式“突出显示”菜单项将导致选定窗口的边框闪烁,从而可以轻松地在屏幕上找到该窗口。

Spy++的使用方法及下载

http://blog.csdn.net/whatday/article/details/7985922

 

主题:Android自动化测试视频教程(robotium应用)

http://www.iteye.com/topic/1143171

http://pan.baidu.com/s/1qXiibEW 密码:4flh 

01.相关概念 

02.Android测试点 

03.android SDK工具1 

04.android SDK工具2 

05.android SDK工具3 

06.android SDK工具4 

07.Android SDK工具5 

08.Android App的开发1 

09.Android App的开发2 

10.robotium基础应用1 

11.robotium基础应用2 

12.robotium基础应用3 

13.自动化架构设计1 

14.自动化架构设计2 

15.自动化架构设计3 

16.自动化架构设计4 

17.自动化架构设计5 

18.自动化架构设计6 

19.自动化架构设计7 

20.自动化架构设计8 

21.自动化架构设计9 

22.自动化架构设计总结 

23.Robotium云测试应用 

24.总结

 

end

分享到:
评论

相关推荐

    QuickTest Automation Reference

    QuickTest Professional Automation Object Model Reference shipped with QTP 1.0 (English Version)

    selenium_ide-3.8.1-fx.xpi

    火狐浏览器自动化测试插件,Selenium IDE 是工具套件中最简单的,通过录制并重播功能,可以快速创建测试用例。这个跟QTP中的对应部分类似。不用怎么费劲就能学会。因为它很简单,IDE只能用来分析元素的原型,而不是...

    QTP和Selenium的对比

    而Selenium是一个开源的自动化测试框架,主要用于Web应用程序测试,目前存在多个版本,包括Selenium IDE、Selenium RC、Selenium Grid和Selenium WebDriver。 描述中提到了这两种工具在软件自动化测试市场上的地位...

    QTP自动化测试技术领航+Selenium 2自动化测试实战 —基于Python语言+LoadRunner性能测试完全讲义

    本资料包涵盖了三个关键的自动化测试工具:QTP、Selenium和LoadRunner,它们分别在功能测试、Web应用自动化测试和性能测试领域有着广泛的应用。 QTP,全称QuickTest Professional,是HP公司推出的一种功能自动化...

    TestComplete与QTP的简单比较

    ### TestComplete与QTP的功能特性比较 #### 一、概述 在软件测试领域,自动化测试已成为提高测试效率、确保产品质量的重要手段之一。其中,TestComplete和QTP(现称为HP UFT,即HP Unified Functional Testing)是...

    QTP92测试工具.part01

    QTP是quicktest Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本。因此你在测试前要考虑好如何对应用程序进行测试,例如要测试那些...

    QuickTest Professional脚本调试器,QTP脚本调试器

    绿色版的QuickTest Professional脚本调试器,QTP脚本调试器

    qtp框架(Automation)

    【QTP框架(Automation)详解】 QuickTest Professional(QTP),现称为UFT(Unified Functional Testing),是由HP公司推出的一款功能强大的自动化测试工具,尤其在软件功能测试领域有着广泛的应用。QTP框架...

    QTP10&QC官方下载地址

    - [Web Services插件](http://esd.mercury.com/akdlm/trial/qtp/qtp92-web-services.zip) 这些插件扩展了QTP的功能,使其能够支持.NET、Java和Web Services等技术栈。例如,.NET插件使得QTP能够在.NET环境中运行...

    Automation_QTP

    QTP,全称为QuickTest Professional(现在被称为UFT - Unified Functional Testing),是由HP(现为Micro Focus)开发的一款功能强大的自动化测试工具。这个"Automation_QTP"压缩包文件包含了关于QTP的资源,旨在...

    Selenium新手入门教程

    首先是Selenium与QTP(Quick Test Professional)的对比。QTP是一款较为强大的自动化测试工具,但它的复杂性和对Windows窗口的操作支持让它在某些场景下变得不够灵活。相比之下,Selenium作为一个开源的Web测试工具...

    selenium2初学者快速入门

    Selenium是一个用于Web应用的功能自动化测试的开源工具套件,它的核心组件包括Selenium IDE、Selenium RC 和 WebDriver。Selenium2是Selenium项目的最新版本,它结合了Selenium RC和WebDriver的优点,提供了更为强大...

    selenium2初学者快速入门(Java).docx

    public class SeleniumTest { public static void main(String[] args) { System.setProperty("webdriver.ie.driver", "path/to/IEDriverServer.exe"); WebDriver driver = new InternetExplorerDriver(); ...

    QuickTest Professional安装步骤及QTP简介

    QuickTest Professional(QTP)是HP公司(现已被Micro Focus收购)推出的一种自动化测试工具,主要用于功能和回归测试。QTP能够自动识别和验证应用程序对象,适用于多种软件平台,包括Web、桌面应用、移动应用等。它...

    selenium笔记

    相较于商业支持的QTP(QuickTest Professional),Selenium 凭借其开源、稳定性和易用性赢得了广大测试人员的喜爱。接下来,我们将深入探讨Selenium的主要组件及其使用方法。 1. **Selenium组成部分** - **...

    selenium 私房菜

    3. **Selenium API参考手册**:这部分将详细介绍Selenium提供的各种命令和函数,包括如何使用它们来执行常见的Web测试任务。 4. **Selenium IDE的使用**:将介绍如何使用Selenium IDE进行录制、编辑和回放测试,...

    QTP源码--test源码

    【QTP源码--test源码】是一份与QuickTest Professional(QTP)相关的源代码集合,主要用于学习和理解QTP的自动化测试原理和实践。QTP,现已被命名为UFT(Unified Functional Testing),是HP(现在是Micro Focus)...

Global site tag (gtag.js) - Google Analytics