Swing是Java的一个控件开发包,它是Sun的JFC(Java Foundation Classes)的一部分,它是一组API用来为java开发GUI程序。
Swing提供了比早先的AWT更复杂的GUI组件,它在一些系统上提供了本地的化的外观,同时它也能支持提供插拔式的外观,这使得应用的看起来好像不依赖于底层平台。
本文简单介绍一下,如何使用SilkTest2008来测试JFC Swing应用,在开始之前你最好在测试机上安装jdk并且设置好Java_home和Path环境变量。
下面是具体步骤:
l 进入C:/Program Files/Borland/SilkTest/ng/samples/java/swing目录,运行其中的批处理文件SwingTestApp.bat,它会帮我们启动Swing例程。
l 然后打开SilkTest,选择菜单option-extensions,将java application 的extension enable起来。
l 在workflow里面,点击enable extensions,选择现在正在运行的TestApplication应用,按照向导进行配置(中间需要重启应用)
l 建立一个新的project。
l SilkTest2008提供了JFC Swing类型应用的项目向导,请选择client/server application下的JFC Swing项目类型,进行创建。
l 将项目命名为TestAWT
l 接下来就和我们测试其他的windows应用类似了
l 新建一个test frame文件,设定应用为刚刚运行起来的Swing应用TestApplication
l 新抓取的frame文件可能使用的是customwin 来定义主窗口或者是菜单等,将它们分别手动改成Swing所对应的java对象类别JavaDialogBox,JavaJFCMenu,JavaJFCMenuItem等。
l 如果你无法编译该frame文件,请尝试将wMainWindow申明中的sClasspath改成如下的形式:const sClasspath = “C:/Program Files/Java/jdk1.6.0_14/bin;C:/Program Files/Java/jdk1.6.0_14;C:/Program Files/Borland/SilkTest/JavaEx/SilkTest_Java3.jar”
l 在JFC Swing应用上选择control菜单的check box菜单项,这时候会弹出来一个子窗口“check box”,继续抓取它的定义放在frame.inc的尾部
l 新建一个MenuTest.t的脚本,输入下面的4Test代码,然后运行,看看效果吧。
[-] testcase TestSwing () appstate none
[ ] TestApplication.SetActive( )
[ ] TestApplication.Control.CheckBox.Pick()
[ ] xCheckBox.SetActive( )
[ ] xCheckBox.Label.SetText( “SilkTest” )
[ ] xCheckBox.SetLabel.Click()
[ ] xCheckBox.Exit.Click()