» 您尚未 登录   注册 | 社区服务 | FTP中心 | 帮助 | 社区 | 无图版 | 测试百科  | 测试Blog 
软件测试基地论坛 -> WEB测试 -> Web测试工具对比--自动化功能测试(2)
 XML   RSS 2.0   WAP 

--> 本页主题: Web测试工具对比--自动化功能测试(2) 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题
crategev




该用户目前不在线
级别: 测试员
精华: 0
发帖: 30
基地声望: 29 点
基地币: 58 Bug
基地贡献: 0 点
好评度: 0 点
在线时间:10(小时)
注册时间:2008-08-07
最后登录:2008-08-25
查看作者资料 发送短消息 推荐此帖 引用回复这个帖子

Web测试工具对比--自动化功能测试(2)

Quick Test 6.5

  1.   启动quick test

  2.   录制操作 脚本如下

  //打开browser对象 object (page是个对象)方法的object(webedit也是个方法)的set方法,意

思就是设置文本框username,内容为admin

  Browser("Dynaweb EPS").Page("Dynaweb EPS_2").WebEdit("username").Set "admin"

  //同上,这回调用的是setsecure方法,作用是将password文本框中的文本进行加密
  Browser("Dynaweb EPS").Page("Dynaweb EPS_2").WebEdit("password").SetSecure

"3fe6931be2a331101ac0bbbc"

  //调用对象webbutton对象的click方法

  Browser("Dynaweb EPS").Page("Dynaweb EPS_2").WebButton("v{ _U ").Click

  //调用Image对象的click方法,目的退出

  Browser("Dynaweb EPS").Page("Dynaweb EPS_3").Image("T_ S y R 梑 g h_ {~ ").Click
  'Browser("Dynaweb EPS").Page("Dynaweb EPS_3").Link("2333").Click
  Browser("Dynaweb EPS").Page("Dynaweb EPS_4").Image("logout").Click

  //等待页面操作完毕
  Browser("Dynaweb EPS").Page("Dynaweb EPS_5").Sync

  易用性总结:

  1.   操作简单但各个脚本都需要进行二次开发

  2.   脚本语言的异同:

  Winrunner 脚本支持c语言

  Robot脚本支持vb脚本(可以扩展脚本语言支持 其他如 perl,java等语言)使测试人员选择度很大

  Quick test脚本支持vbScript脚本

  一. 学习脚本:中国IT实验室robot和quick

test为vb语言,容易掌握,winrunner脚本为c语言,掌握有难度,

短期内提高对测试人员要求比较高。

  二. 调试脚本:robot脚本支持step,animate等调式方式,winrunner和quick test支持step等几

种调试方式,相互比较来看robot调试功能强大,比较直观。

  三. 测试环境兼容性:

  改变测试环境配置,将ie打开后变化窗口大小,关闭,重新运行测试脚本。

  Winrunner脚本回放失败,其他两种工具测试回放成功,对比发现由于winrunner脚本依靠坐标来确

认对象位置,而robot和quick test是以对象来确认。稳定性上后两种测试工具更加占优。

  如:winrunner脚本中函数

  win_mouse_click ("html_frame_2", 566, 33)以坐标来记录点击位置,当对象位置改变,脚本将无

法执行。

  针对winrunner有两种解决对象识别的方法:

  1.坐标固定:启动ie后,使ie窗口最大化,窗口坐标得到固定,修改脚本后如下

   web_browser_invoke(IE,"http://192.168.1.42");

  //让窗口最大化,坐标固定了,这里不考虑机器分辨率的问题
  win_max("Browser main Window");

  win_mouse_click ("html_frame_2", 402, 36);
  win_type ("html_frame_2","adminjetspeed");
  win_mouse_click ("html_frame_2", 566, 33);
  win_check_gui("html_frame_2", "list1.ckl", "gui1", 1);

  录制的脚本基本回放通过(这里没有考虑分辨率的情况,否则脚本开发难度增大。)这种方法不是

根本解决方法。

  2.让winrunner认识对象

  解决方法是开发dll让winrunner引用,windows提供了mshtml对象,借用他可以实现winrunner认识

对象。这里我用word的开发环境简单实现这个功能动态添加用户名密码(可以改写编译成dll给

winrunner引用)。

  主要代码(vb版本):

  思路:ie加载网页后,枚举所有元素对象,找到要找的元素,然后赋值。这里是找username和

password文本框,把用户名密码添加进去。

    Dim hdoc As HTMLDocument
    Dim eleColl As IHTMLElementCollection
    Dim sElement As IHTMLElement
    Dim i As Integer  
  Set hdoc = WebBrowser1.Document
  Set eleColl = hdoc.all
  For Each sElement In eleColl
   If sElement.isTextEdit Then
    If sElement.outerHTML = "" Then
     sElement.setAttribute "value", "admin"
    End If
        If sElement.outerHTML = "" Then
          sElement.setAttribute "value", "jetspeed"
        End If
       End If
  Next

  同理可以实现winrunner识别网页任何对象。

[楼 主] | Posted: 2008-08-21 11:45 顶端
hanxianghui


该用户目前不在线
级别: 资深测试工程师
精华: 0
发帖: 286
基地声望: 43 点
基地币: 30 Bug
基地贡献: 0 点
好评度: 0 点
在线时间:123(小时)
注册时间:2008-09-03
最后登录:2008-11-27
查看作者资料 发送短消息 推荐此帖 引用回复这个帖子




[1 楼] | Posted: 2008-09-19 11:59 顶端

软件测试基地论坛 -> WEB测试




软件测试基地上海测仕信息技术有限公司旗下网站
Copyright © 2005-2007 Cntesting.com, All Rights Reserved
沪ICP备06057721号

Powered by PHPWind Code © 2003-06 PHPWind
Total 0.163780(s) query 5, Time now is:12-04 15:02, Gzip disabled
You can contact us


每日一句:Loading...