致力于软件自动化测试的研究和探索

[SilkTest] 关于SilkTest中的场景恢复函数

上一篇 / 下一篇  2009-06-05 15:06:13 / 个人分类:蓝天测试

SilkTest中有这样几个函数:ScriptEnter()ScriptExit()TestCaseEnter(), TestCaseExit(), TestPlanEnter(), TestPlanExit(), Appstate()他们的主要任务是在ST中处理场景恢复或其他一些公共性的事务。51Testing软件测试网|{ |\]5o

 51Testing软件测试网NKN!F,J

           首先说下他们的执行先后关系:TestPlanEnter->ScriptEnter->TestCaseEnter/Appstate->TestCaseExit->ScriptExit->TestPlanExit,然后我们再逐个分析:

n_E;~;~?U#y|x0

 51Testing软件测试网Z g%b/IXp'mj*l

TestPlanEnter:当你在一个Plan文件里运行TestCase时,该函数就会被驱动。对在整个测试需要进行一些设置单又不需要每个CASE进行设置的时候,该函数比较有效。注意:一个Plan文件该函数仅被驱动一次,不论是否圈套了其他Plan文件。

f@8] E'PV1@#j0

 51Testing软件测试网9h6^Q5MES"p9t b0I"?e

ScriptEnter:当一个脚本文件第一次被访问时,它会被驱动。该函数很少被用到,除非你用.t文件执行CASE,否则用在Plan里没啥意思,效果同TestCaseEnter51Testing软件测试网AL._h,e:p I

 51Testing软件测试网 tg$Fm1B2Y

TestCaseEnter:该函数会在每个CASE执行前运行,它将会被引用到每个CASE中,所以缺点是不够个性化,当然如果你的测试用例的初始化接口永远是同一个,那么你可以用这个,当然在复杂的产品中,这种情况是很少的。51Testing软件测试网8n'Alml(f M~ r

 

9{P VBt,M"c0

Appstate:该函数的功能同TestCaseEnter类似,但唯一的亮点就是弥补了TestCaseEnter的缺点,它可以个性化定制CASE的入口点。用法是: testcase myTest appstate myAppstate,这里的myAppstate就是你自定义的appstate51Testing软件测试网-}-|q&hcM

 

J ub(KA lLU6W p0

TestCaseExit:该函数会在每个CASE执行完后运行,主要做的是些清理工作,一般的话会用的比较少。51Testing软件测试网+{Q+D(lWU4|:M

 

k c1LG@:B0

ScriptExit:该函数会在跳出.t文件时被调用,一般很少用到。51Testing软件测试网U6})a*aQYj5o(D

 

;X_+s\#Jni0

TestPlanExit:当你运行完一个Plan,该函数会被驱动。设计它应该是为了解决整个测试结束后的清理工作自动化。一般用的不多。

%I1ePw#b:m0

 51Testing软件测试网 V6}I{c)K8V

注意点:所有的Exit函数需要一个Boolean型参数,比如TestCaseExit(BOOLEAN bExpectLog)

51Testing软件测试网r&Hz'n"K

总结:在实际项目中TestPlanEnter(), TestCaseExit(), Appstate()用的比较多, TestPlanEnter主要处理整个测试运行前要进行的检查或设置但又不需要每个CASE都要进行的操作;TestCaseExit主要处理在测试执行完后需要进行的清理工作或其他辅助工作,比如测试结果update数据库中;Appsate主要用来初始化用例入口点,使CASE从一个基础,干净的状态开始运行,同时也是为了脚本的重用。51Testing软件测试网@.m!QnezsI


TAG: SilkTest

血樱狂飙的个人空间 引用 删除 Jay-Yang84   /   2009-08-27 17:31:46
5
 

评分:0

我来说两句

Open Toolbar