SilkTest Q&A 11
101. 如何从其他的机器访问脚本?
答案:将包含脚本的文件夹共享出来…非常简单…你可以使用connect()在你本机运行脚本从而使得它们在其他的一些机器上执行…但是其他人无法访问这些脚本,除非你将它们共享出来或者试试别的什么方法。
103. 有什么办法可以让默认的复原系统顺序关闭对话框么?
谁能够告诉我有什么办法可以让默认的复原系统顺序关闭对话框么?这些对话框的双亲不是MainWin,而是ChildWin,我将会十分感激。默认的复原系统只能够检查那些双亲是由wMainWindow常量表示的MainWin的对话框。
答案1:
嗯,你不用改变默认的复原系统,但是你可以用一个基于none状态的appstate,而不是基于DefaultBaseState的appstate
答案2:
建立一个全局变量
lwClose = {…}
想要关闭的windows
然后增加:
TestcaseExist ()
window wClose
for each wClose in lwClose
if wClose.Exists ()
wClose.Close ()
答案3:
这里有你想要的,假设你有如下的树状结构:
Win1 Win7
Win2 Win3 Win8 Win9
Win4 Win5 Win6
注意win7和win1有不同的threads
当你申明这些窗口时,你要把他们加入lwClose list中去。下面是加后的list结果(假设你想要让win1打开):
lwClose = {...}
Win9
Win8
Win7
Win6
Win3
Win5
Win4
Win2
这样你就建立了你的threads树,或者你可以建立一个Dismiss()函数如下:
for i = 1 to ListCount (lwClose)
do
for each wClose in lwClose
wClose.Close ()
except
do nothing (假如你必须按顺序关闭窗口)
104. 我想从 result 窗口中去掉 testcase 中 script 的内容,该如何做?
如果 case 通过了,在 result 窗口中, case 所在的 script 内容都会在 result 文件里面打印出来。我想把他们去掉,该如何做?
答案 1 : 在 Option 菜单的 runtime 对话框里,有几个 check box 是可以设定 result 的。根据你对 result 的设定,会产生不同的 result 内容。根据你的需要来设定吧。
更详细一点,在 Option->Runtime 对话框中,在 ”debugging” 部分中 uncheck ”print agent calls” 和 ’Print tags with agent calls”
106. 这种情况怎么办?
有一个应用,通过frame文件来识别对象。假如一个对象是custom object,你把custom object map成标准对象。而在map完成之后,该对象还是不能被SilkTest所识别,那该怎么办呢?
答案:首先,你不得不尝试enable不同的extension,这样对象应该能被识别。如果这样还是不行的话,最后的选择就是使用坐标了,不过如果不能正确地使用坐标的话,这种方法不会很stable的。
107. 如何为List of List of String进行排序?
答案:
[+] testcase test() appstate none
[ ]
[ ] LIST OF LIST OF STRING llsStr =
{{"1234","A"},{"2242","B"},{"2234","C"}}
[ ] Print(Sort(llsStr))
[+] LIST OF LIST OF STRING Sort (LIST OF LIST OF STRING llsStr)
[ ]
[ ] LIST OF STRING lsStr
[ ] INTEGER i, j , k
[ ] k = ListCount(llsStr)
[+] for (i=1;i <= k;i++)
[+] for (j=i+1; j<=k; j++)
[+] if val(llsStr[i][1]) > val (llsStr[j][1])
[ ] lsStr = llsStr[j]
[ ] llsStr[j] = llsStr[i]
[ ] llsStr[i] = lsStr
[ ]
[ ]
[ ] return llsStr
108如何编写 master plan?
答案 1: 是的,你可以用 master plan 这种途径来运行你所有的 sub plan 。只要新建一个 plan 文件,并在其中调用你的 sub plan 或者 testcase 即可。
如果你想要在 master plan 中运行 sub plan ,你可以用如下的语法格式:
Include: mysubplan.pln
答案 2:
1. 打开你的 master plan
2. 你可以 mark 需要运行的 sub plan
3. 从 master plan 中运行 mark 的 sub plan
如何 mark sub plan
1. 在 master plan 中选择 sub plan 的整行 ( 例如, include: subplan1.pln)
2. 到 test plan 菜单,选择 ”mark”
3. 重复该步骤, mark 所有的需要运行的 sub plan
4. 到 Run 菜单,选择 ”run marked tests”
这样你就可以仅仅运行那些 mark 过的 sub plan ,在最终的 result 文件中,你可以通过不同的颜色区别出哪些 plan 是运行过的,哪些是没有运行过的
109. 如何在script文件中隐藏密码?
在winrunner中,密码是通过加密的方式记录的,但是silktest中,是按照实际的内容进行记录的。
所以在script中无法隐藏密码,如果你需要绕过这个问题,可以从文件中读取密码。
如果这还不够好(因为在文件中密码还是以文本方式保存的),你可以使用一些加密功能的工具来加密密码。你可以调用外部的语言(Ruby,perl,python等)来加解密,然后把它通过一个变量传过来。
问题是无论你用哪种方法来输入一个未加密的密码到登陆界面,该密码同样可以被写到另外一个文件中去(这样就可以被别人盗用)。
所以,不要使用你自己的账号来做测试。应该使用专门的测试账号。
SilkTest Q&A 11的更多相关文章
- SilkTest Q&A 7
Q61.有一个用Dotnet开发的应用,有1000个为测它而录制的case,一直都运行的很正常,直到有一天… 有人改变了该应用命名空间,由于现在有一个新的window或是panel出现,所以测试脚本一 ...
- SilkTest Q&A 9
Q81:我应该如何存取excel sheet里面的空字符串? A81:定制代码如下: 解决方案1: [-] if sText!=NULL [ ] Page.tfldName.SetText(sText ...
- SilkTest Q&A 2
Q11:SilkTest中有没有计算web页面上单词数量的函数? A11:你可以使用Clipboard函数.使用Ctrl+a和Ctrl+c,然后解析string的list. Q12:silktest的 ...
- SilkTest Q&A 4
Q31.如何在inc文件里面写函数? A31.在你在inc文件(例如demo.inc)里写好函数以后,你需要使用Use path/Use file来指定指定它们. 在SilkTest中->Opt ...
- SilkTest Q&A 12
111. 谁能告诉我,正在执行的SilkTest的log是存放在哪里? 答案1: 用下面的命令可以导出文本格式的log "c:/program files/segue/silktest/pa ...
- SilkTest Q&A 13
Q121 :我想要测试 windows2003 上的 remote 应用,但是每次都得到如下的错误 我想要测试 windows2003 上的 remote 应用,但是每次都得到如下的错误: " ...
- SilkTest Q&A 8
Q72.如何在一个testplan中运行所有的testcase? A72. 1.打开testplan 2.点击Run/Run All Tests菜单,SilkTest开始执行testplan中所有的t ...
- SilkTest Q&A 10
92. 如何把单个表达式分两行来写? 答案1: 使用Shift + Enter 答案2: 很容易在online help里面找到答案: 1) line break in code 2) ...
- SilkTest Q&A 3
Q21:如何给testcase的属性赋值? A21: 1.确定你的testplan处于打开状态. 2.点击你准备赋属性值的testcase 3.点击TestPlan/detail菜单,testplan ...
随机推荐
- json文件问题
在json数据没有错误 字符 的前提下 出现的问题 如果有中文 那么编码格式 必须是UTF-8格式的
- 分享一个Redis帮助类
最近在项目中使用了redis来存储已经下载过的URL,项目中用的是ServiceStack来操作Redis,一开始ServiceStack的版本用的是最新的,后来发现ServiceStack已经商业化 ...
- Actor::updateMassFromShapes
unity报错Actor::updateMassFromShapes: Compute mesh inertia tensor failed for one of the actor's mesh s ...
- JavaDoc的生成规则---ShinePans
使用方法: javadoc [options] [packagenames] [sourcefiles] [@files] -overview <file> 从 HTML ...
- ioc构架demo
1.视图 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:too ...
- SQL SERVER 2008R2sp1配置Database Mail –用SQL 数据库发邮件
步骤1)创建配置文件和帐户 看图片吧,挺简单的: 中间略过的一些步骤,就点下一步即可. 下面我们测试一下: Step 2)配置邮件: 在完成账户和配置文件创建之后,我们需要配置Database Mai ...
- [转]SELinux管理与配置
原文链接:http://blog.csdn.net/huangbiao86/article/details/6641893 1.1 SElinux概述 SELinux(Security-Enhance ...
- Linux开机启动十步骤
启动第一步--加载BIOS 启动第二步--读取MBR 启动第三步--Boot Loader 启动第四步--加载内核 启动第五步--用户层init依据inittab文件来设定运行等级 启动第六步--in ...
- Mac OSX的开机启动配置
Login Items Mac OSX的当前用户成功登录后启动的程序,该类别的启动项配置文件存放在~/Library/Preferences/com.apple.loginitems.plist,所以 ...
- 使用 HTML5 webSocket API实现即时通讯的功能
project下载地址:http://download.csdn.net/detail/wangshuxuncom/6430191 说明: 本project用于展示怎样使用 HTML5 webSock ...