zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    随笔--摘录
    在windows+Linux环境下搭建Hadoop集群
    大数据 hadoop 环境搭建
    react-native 学习 ----- React Navigation
    android开发中关于继承activity类中方法的调用
    linux下 bin和sbin的区别
    inux中bin与sbin目录的作用及区别介绍
    hadoop 解除 "Name node is in safe mode"
    hadoop常用命令
    菜鸟使用MySQL存储过程and临时表,供新手参考,请高手斧正
  • 原文地址:https://www.cnblogs.com/lindows/p/14390302.html
Copyright © 2011-2022 走看看