google搜索 51Testing站内搜索                    软件测试门户 | 软件测试培 训 | 文章资料精选 | 软件测试论坛 | 软件测试博客 | 测试招聘求职 
打印

silkTest problems against Java application

silkTest problems against Java application


今天用silkTest来测试一个新的java application,却发现我的silkTest总不能正确识别Java objects?
可是昨天在测试其他程序时候明明还可以的。
折腾了半天,终于找到问题所在,和大家分享:

我的操作步骤如下,这里的测试对象是java web start里面的画图程序,可以从这里访问:
http://java.sun.com/products/javawebstart/demos.html
1。建立测试环境:
a, silktest里面新建立一个project
b, 启动java画图程序,然后从tools->enable extension 选择需要测试的对象,就是java的画图程序了
c, 按照指示操作,配置silktest支持java application(这里最后出现了错误信息:
test failed, could not find either JavaMain or JavaDialogbox
in your java application,没有关系,只要下面能识别就可以了,这个地方经常出现错误的)
2。录制测试脚本:
a, 录制测试对象声明(window declarations)
[-] window CustomWin Draw
[+] multitag "[JavaMainWin]Draw"
[+] CustomWin File
  [-] multitag "[JavaJFCMenu]File"
   [ ] "$File"
b, 录制test case
[+] testcase myTest()
  [-]Draw.setActive()

这里问题就出现了,java application最上层怎么是CustmWin class? 这里应该是JavaMainWin class的
3。运行测试脚本
运行失败:Draw 不支持setActive()方法。
setActive是JavaMainWin的一个方法,CustmWin 的确是不支持的

4。分析?
错误原因:java objects没有能被正确的识别出来,怎么解决?
     
解决:  
      因为silktest里面的测试环境是针对每个project不同的,对应的环境配置参数保存在options set文件中。
        而昨天的project还可以正确运行java程序,所以尝试把以前的环境配置拿到这里用
       (通过Options->Open options set),重新做上面的步骤,这次步骤2的内容如下:
      
       步骤2:
       录制测试脚本:
     a, 录制测试对象声明(window declarations)
[-] window JavaMainWin Draw
[ ] tag "Draw"
[+] JavaJFCMenu File
  [-] multitag "File"
   [ ] "$javax.swing.JMenu[1]"
b, 录制test case
[+] testcase myTest()
  [-]Draw.setActive()

这里最上层的对象已经识别成功了,是JavaMainWin,执行步骤3,通过
这样就更确认了是环境配置的问题,仔细查看以前的环境配置说明文件,
发现要求把silktest/extend目录下面的javaex.inc文件内容全部注释掉?

当时是为了方便java识别,把这个文件重写放置在其他目录了,打开这个文件,发现JavaMainwin class的确是在这里定义的
[+] winclass JavaMainWin   : MainWin
恢复该文件,重新操作,java 对象果然能正确识别了

原因分析:看来silktest默认是是使用JavaEx.inc来识别java对象的,由于新的project环境中,没有找到该类似文件, java objects 就被识别成一般的
winclass了;

[ Last edited by asks_zhuang on 2005-3-4 at 10:12 ]

TOP

支持这样的帖子!

TOP

是呀,这种贴子应该发扬光大!


哈哈!中英文的结合,问题与方案的相扣!Come on!
Eagle flies high in the sky!

TOP

好啊!

TOP

 
当前时区 GMT+8, 现在时间是 2008-9-6 11:02Copyright(C)上海博为峰软件技术有限公司 2001-2007 电话:021-64471599-8017
当您在访问网站、论坛及博客过程中遇到问题时可发送email:webmaster@51testing.com或发送论坛短信至管理员风在吹