SilkTest天龙八部系列6-用open agent进行测试
SilkTest支持两种测试模式,一种是用classic agent,另一种就是用我们今天要介绍的open agent. open agent可以提供和classic agent差不多的录制回放功能。它们主要的差别在于所支持的对象类型,了解这些差别对于需要手工编辑的test case很有用。
classic agent支持的应用类型包括:
Windows Forms
Java AWT applications
Java SWT/RCP applications
Java Swing applications
Windows API-based client/server applications
Powerbuilder applications
web applications
Web with ActiveX/Visual Basic applications
Java Applets
open agent支持的应用类型包括:
Adobe Flex
Windows API-based client/server applications
Java SWT/RCP applications
Windows Presentation Foundation (WPF) applications
xBrowser applications
需要注意的是open agent不支持下面这些record菜单下的功能,window location, class/scripted, class/accessibility,
method, defined window.
当你使用silktest的2008版本建立project的时候,向导会显示每种project类型使用的默认agent,不过这个是可以在运行case的
时候进行相应的更改。你可以在工具栏上选择想用的agent,也可以通过runtime Option来进行更改。
下面我用open agent来测试一下我们熟悉的老朋友,windows xp系统自带的计算器。下面是具体的步骤:
1. 先从附件中运行计算器
2. 打开silktest 2008,新建一个project "openagent",可以简单地选择类型为generic->open agent
3.选择basic workflow, 然后点击工具栏上的enable extensions,然后在弹出的对话框中选择列出来的计算器应用,它的name应
该是calc.exe。在click对话框下面的"enable extensions"按钮后就可以close对话框了。
4.新建一个test frame,在弹出的对话空中选择计算器应用,然后点击OK按钮。这个时候,计算器的定义会被存储在默认的
frame.inc文件中。
5.关闭计算器
6.新建一个calc_test.t,在其中输入如下的代码。
[-] testcase calc_test()
[ ] 计算器.SetActive()
[ ] 计算器.Close()
7.运行,你会发现用open agent运行一个testcase也很容易。
SilkTest天龙八部系列6-用open agent进行测试的更多相关文章
- SilkTest天龙八部系列4-ChildWin
一直觉得SilkTest的ChildWin不好理解,今天大致看了一下,其实它和DialogBox每啥区别,也是一种window类型.帮助里面说,典型的ChildWin就是文档窗口.在Windows上, ...
- SilkTest天龙八部系列1-初始化和构造函数
SilkTest没有提供专门的构造函数机制,但是在类对象生成的过程中,会先初始化在类中申明的变量.我们可以在初始化该变量的时, 调用某些函数完成对象初始化工作,看上去好像是调用了构造函数一样.不过要记 ...
- SilkTest天龙八部系列3-动态父窗口
SilkTest中用parent语句来声明某个window的父窗口,这会帮助silktest在识别该对象时检查其是否是由该父窗口打开,如果parent语句申明的父窗口并不存在,那么该对象无法被正确识别 ...
- SilkTest天龙八部系列5-类的属性
SilkTest的面向对象机制让用户可以为类定义属性,用property语句实现.除此以外用户在类中还可以定义成员变量和不可变的setting属性.也就是是说Silktest类中可以有以下三种属性/变 ...
- SilkTest天龙八部系列7-动态对象识别
在测试web应用时,我们常常需要面对web页面对象变化频繁,并且使用预定义方式识别对象慢的困难.为了解决这些问题,SilkTest引入了dynamic object recognition技术,它使用 ...
- python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda
---恢复内容开始--- python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda 从头开启python的开发环境搭建.安装比较简单, ...
- elixir 高可用系列(一) Agent
概述 elixir 本身是一种 immutable 的语言,默认情况下,进程间是不共享任何状态的,进程之间通过消息来交互. 而 Agent 则封装了一种进程间共享状态的方式,通过这种方式,不用显式的写 ...
- Selenium私房菜系列5 -- 第一个Selenium RC测试案例
<Selenium简介>中讲过,Selenium RC支持多种语言编写测试案例,如:C#,Python.在工作中,我倾向于是用Python这类动态语言编写测试案例,因为这样的测试案例无需编 ...
- Jmeter系列(39)- Jmeter 分布式测试
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 为什么要做分布式 Jmeter 本身的 ...
随机推荐
- PROTEL99生成GERBER的操作说明
GBL BOTTOM LAYER(底层布线图)GBO BOTTOM OVERLAYER(底层丝印层)GBP BOTTOM PASTE LAYER(底层锡膏层)GBS BOTTOM SOLDER MAS ...
- QT实现,通过URL下载文件的接口实现
今天来把坑填上. 具体就是提供一个URL,并通过这个URL下载文件. MyDownloader.h: #ifndef MYDOWNLOADER_H #define MYDOWNLOADER_H cla ...
- Spring-data-redis: 分布式队列
Redis中list数据结构,具有"双端队列"的特性,同时redis具有持久数据的能力,因此redis实现分布式队列是非常安全可靠的.它类似于JMS中的"Queue&qu ...
- java学习之JDBC
之前学习了数据库原理,上学期也学了oracle数据库,我的学习视频上是讲的mysql数据库,其实都差不多,复习了下sql知识,数据库的学习就没有写下来了,就从Java怎么操作数据库开始吧. 因为这年过 ...
- Libev学习笔记4
这一节首先分析Libev的定时器部分,然后分析signal部分. 对定时器的使用主要有两个函数: ev_timer_init (&timeout_watcher, timeout_cb, .) ...
- SSH框架的简单学习—Structs学习
一:struts部分 1.打开Myeclipse,创建一个web project,项目名称为SSHDemo. 2.在web的lib下粘贴struts2-blank.war解压后WEB-INF\lib下 ...
- 犯罪团伙利用POS机刷信用卡积分转卖 年获利千万
今年1月20日,广东省公安厅展示去年缴获的盗刷专用POS机. 今年1月20日,广东省公安厅展示了一批缴获的盗刷信用卡工具. 他们是一群靠信用卡谋生的年轻人,平均年龄不超过30岁. 他们将各银行信用 ...
- Never-build package 'XXXX' requires always-build package 'EhLib70'
控件包使用了DbGridEh.Requies也加入了ehlib70.dcp就是编译时不通过,提示: Never-build package 'XXXX' requires a ...
- 一道月薪3W的java面试题 (小明和小强都是张老师的学生,张老师的生日是某月某日,2人都不知道张老师的生日)
小明和小强都是张老师的学生,张老师的生日是M月N日,2人都知道张老师的生日 是下列10组中的一天,张老师把M值告诉了小明,把N值告诉了小强,张老师问他们知道他的生日是那一天吗? 3月4日 3月5日 3 ...
- C#多线程编程简述
NET将关于多线程的功能定义在System.Threading名字空间中.因此,要使用多线程,必须先声明引用此名字空间(using System.Threading;). a.启动线程顾名思义,“启动 ...