一直觉得SilkTest的ChildWin不好理解,今天大致看了一下,其实它和DialogBox每啥区别,也是一种window类型。帮助里面说,典型的ChildWin就是文档窗口。在Windows上, ChildWin是MDI (多文档接口multi-document interface)子窗口,可以在main window中被最大化,最小化,调整大小的窗口,一般地,childwin有一个系统菜单。
下面是一个打开silktest onlinehelp define window的例子,原来的 define window是DialogBox,现在把它改成childwin一样能够被silktest识别出来。(具体区别请对照上一篇 SilkTest天龙八部系列3-动态父窗口)

[+] testcase DynamicParent()
[ ] SilkTestHelp.SetActive()
[ ] SilkTestHelp.Bookmark.Define.Check()
[ ] sleep(1)
[ ] SilkTestHelp.bookmarkdefine.Close()
[ ] sleep(1)
[ ]
[+] window MainWin SilkTestHelp
[-] multitag "SilkTest Help"
[ ] "$C:/WINDOWS/winhlp32.exe"
[+] Menu File
[ ] tag "File"
[+] MenuItem Open
[+] multitag "Open"
[ ] "$1101"
[+] MenuItem PrintTopic
[+] multitag "Print Topic"
[ ] "$1103"
[+] MenuItem Exit
[+] multitag "Exit"
[ ] "$1105"
[+] Menu Edit
[ ] tag "Edit"
[+] MenuItem Copy
[+] multitag "Copy"
[ ] "$1203"
[+] MenuItem Annotate
[+] multitag "Annotate"
[ ] "$1202"
[+] Menu Bookmark
[ ] tag "Bookmark"
[+] MenuItem Define
[+] multitag "Define"
[ ] "$1301"
[+] Menu Options
[ ] tag "Options"
[+] Menu KeepHelpOnTop
[ ] tag "Keep Help on Top"
[+] MenuItem Default
[+] multitag "Default"
[ ] "$1470"
[+] MenuItem OnTop
[+] multitag "On Top"
[ ] "$1471"
[+] MenuItem NotOnTop
[+] multitag "Not On Top"
[ ] "$1472"
[+] MenuItem DisplayHistoryWindow
[+] multitag "Display History Window"
[ ] "$1453"
[+] Menu Font
[ ] tag "Font"
[+] MenuItem Small
[+] multitag "Small"
[ ] "$1462"
[+] MenuItem Normal
[+] multitag "Normal"
[ ] "$1460"
[+] MenuItem Large
[+] multitag "Large"
[ ] "$1461"
[+] MenuItem UseSystemColors
[+] multitag "Use System Colors"
[ ] "$1465"
[+] Menu Help
[ ] tag "Help"
[+] MenuItem Version
[+] multitag "Version"
[ ] "$1503"
[+] MenuItem AboutWinHelp2000
[+] multitag "About WinHelp 2000"
[ ] "$10001"
[+] CustomWin MS_WINTOPIC1
[ ] tag "[MS_WINTOPIC]$0"
[+] CustomWin MS_WINICON1
[ ] tag "[MS_WINICON]$0"
[+] PushButton HelpTopics
[+] multitag "Help Topics"
[ ] "$-1[1]"
[+] PushButton Back
[+] multitag "Back"
[ ] "$-1[2]"
[+] PushButton Print
[+] multitag "Print"
[ ] "$-1[3]"
[+] CustomWin Wh98NavPane1
[ ] tag "[Wh98NavPane]$999"
[+] CustomWin AfxWnd42s1
[ ] tag "[AfxWnd42s]$999[1]"
[+] PageList PageList1
[ ] tag "$998"
[+] StaticText StaticText1
[ ] tag "$65535"
[+] CustomWin Index
[+] multitag "[AfxWnd42s]Index"
[ ] "[AfxWnd42s]$999[2]"
[+] TextField TextField1
[ ] tag "$14003"
[+] TreeView TreeView1
[ ] tag "$14005"
[+] PushButton Display
[+] multitag "Display"
[ ] "$14004"
[ ] window bookmarkdefine = BookmarkDefine
[ ]
[ ]
[+] window ChildWin BookmarkDefine
[ ] tag "../Bookmark Define"
[+] StaticText BookmarkNameText
[+] multitag "Bookmark name:"
[ ] "$65535"
[+] TextField BookmarkName1
[+] multitag "Bookmark name:"
[ ] "$102"
[+] ListBox BookmarkName2
[+] multitag "Bookmark name:"
[ ] "$103"
[+] PushButton OK
[+] multitag "OK"
[ ] "$1"
[+] PushButton Cancel
[+] multitag "Cancel"
[ ] "$2"
[+] PushButton Delete
[+] multitag "Delete"
[ ] "$104"

SilkTest天龙八部系列4-ChildWin的更多相关文章

  1. SilkTest天龙八部系列1-初始化和构造函数

    SilkTest没有提供专门的构造函数机制,但是在类对象生成的过程中,会先初始化在类中申明的变量.我们可以在初始化该变量的时, 调用某些函数完成对象初始化工作,看上去好像是调用了构造函数一样.不过要记 ...

  2. SilkTest天龙八部系列3-动态父窗口

    SilkTest中用parent语句来声明某个window的父窗口,这会帮助silktest在识别该对象时检查其是否是由该父窗口打开,如果parent语句申明的父窗口并不存在,那么该对象无法被正确识别 ...

  3. SilkTest天龙八部系列5-类的属性

    SilkTest的面向对象机制让用户可以为类定义属性,用property语句实现.除此以外用户在类中还可以定义成员变量和不可变的setting属性.也就是是说Silktest类中可以有以下三种属性/变 ...

  4. SilkTest天龙八部系列6-用open agent进行测试

    SilkTest支持两种测试模式,一种是用classic agent,另一种就是用我们今天要介绍的open agent. open agent可以提供和classic agent差不多的录制回放功能. ...

  5. SilkTest天龙八部系列7-动态对象识别

    在测试web应用时,我们常常需要面对web页面对象变化频繁,并且使用预定义方式识别对象慢的困难.为了解决这些问题,SilkTest引入了dynamic object recognition技术,它使用 ...

  6. SilkTest Q&A 5

    Q41.VerifyBitmap的问题. 我正在使用函数VerifyBitmap比较位置,边,颜色等,例如: Window.VerifyBitmap("Position.bmp", ...

  7. SilkTest高级进阶系列6-motif tag

    看SilkTest代码的时候不小心看到winclass.inc里面的一些类申明使用的是motif tag,例如: [-] winclass MessageBoxClass : DialogBox [ ...

  8. SilkTest高级进阶系列8 – 放下榔头,立地成佛

    在地球尚未毁灭的某天,手动测试的同事找到你所在的自动组,问是否可以帮助他们自动化一个需要连续添加100个条目的测试用例,因为他们觉得这是一个噩梦.你口头上说要先烟酒烟酒才能知道,但是内里早就满心欢喜: ...

  9. SilkTest高级进阶系列7-用PostMessage模拟鼠标

    SilkTest可以通过调用Windows API来向控件发送消息,从而进行特定的操作.下面这段code使用PostMessage来向计算器上的清除键发送WM_LBUTTONDOWN和WM_LBUTT ...

随机推荐

  1. javascript的族家族史

    JavaScript 实现 完整的 JavaScript 实现是由以下 3 个不同部分组成的:ECMAScript.文档对象模型.浏览器对象模型.这也就是说 cocos2d-js 中 其实我们用的是 ...

  2. WinForm实现简单的拖拽功能(C#)

    用到了ListBox和TreeView两个控件,ListBox作为数据源,通过拖拽其中的数据放置到TreeView上,自动添加一个树节点 ListBox控件的MouseDown用于获取要拖拽的值并调用 ...

  3. Linux Kernel 整数溢出漏洞

    漏洞名称: Linux Kernel 整数溢出漏洞 CNNVD编号: CNNVD-201311-062 发布时间: 2013-11-07 更新时间: 2013-11-07 危害等级:    漏洞类型: ...

  4. UpdatePanel 无刷新弹出窗口

    UpdatePanel下解决提示框不弹出的方法 用户体验上既想页面不刷新,也希望同时能够看到操作的效果(弹出提示框)! ①不刷新,我们可以使用UpdatePanel ②弹出消息框,这个有很多的方式:我 ...

  5. breakpoints、lldb 和 chisel 的使用

    http://www.cocoachina.com/ios/20150803/12805.html Breakpoints BreakPoint分类 breakpoint也是有分类的,我这里的文章内大 ...

  6. 【转】Xcode常用快捷键与技巧分享

    原文网址:http://www.jianshu.com/p/039954b0cbe0 工欲善其事必先利其器. 虽然Xcode编写objective-c or swift很完美, 但了解其工具的常用快捷 ...

  7. Bootstrap插件的使用

    昨天,我偶然间发现了它——BootStrap插件,它是一一套功能强大的前端组件.说起来,我跟这插件还真算得上有缘,我本来并不是去找这个插件的,我本来是找BootStarp Paginator这个分页插 ...

  8. HDU- 2063 过山车

    http://acm.hdu.edu.cn/showproblem.php?pid=2063 过山车//我的第一个二分匹配 Time Limit: 1000/1000 MS (Java/Others) ...

  9. 【译】Selenium 2.0 WebDriver

    Selenium WebDriver   注意:我们正致力于完善帮助指南的每一个章节,虽然这个章节仍然存在需要完善的地方,不过我们坚信当前你看到的帮助信息是精确无误的,后续我们会提供更多的指导信息来完 ...

  10. 在windows下创建基于github的hexo静态博客

    最近边上的人都突然买起了域名搭起了个人网站,渣渣的我介于期末没事干也跟风搭了个静态博客.虽说博客基本不更新T T,嘛嘛回归正题. 首先准备工作: 1)安装nodejs 2)安装msysgit(虽然现在 ...