51Testing软件测试论坛

标题: 关于“ 利用 Rational Functional Tester 实现 ITCL (或者 IBM) 框架 ” [打印本页]

作者: mingxiaoqiu    时间: 2009-11-18 16:40
标题: 关于“ 利用 Rational Functional Tester 实现 ITCL (或者 IBM) 框架 ”
我依据“利用 Rational Functional Tester 实现 ITCL (或者 IBM) 框架”进行了操作,但无法实现。
在运行“new ClassGenerator().updateScripts(V); ”时报“回放脚本期间发生异常:[AppObject.Getter] [CRFCN0544E: 脚本“AppObject.Getter”的第 39 行上的 RationalTestScriptError:[java.lang.NoClassDefFoundError] - com.rational.test.ft.script.RationalTestScript。]。”错误,不知为何。
望哪位高手解答一下,不甚感激!
作者: C.K    时间: 2009-12-20 22:44
标题: 回复 1# 的帖子
把你的脚本发一下 看看
作者: dennyqiang    时间: 2009-12-24 16:45
不知楼主对JAVA了解得如何,错误消息是说java.lang.NoClassDefFoundError,表示找不到Java的类,可以看看AppObject.Getter第39行是在做什么事情,一步一步来Debug.
作者: sunnyhgj    时间: 2010-1-28 14:04
我也遇到了同样的问题,请教楼主该问题是怎么解决的?com.rational.test.ft.script.RationalTestScript对应的jar包都有引入。。。请指点!
作者: sunnyhgj    时间: 2010-1-28 14:11
new ClassGenerator().updateScripts(V);使用的是ibm.jar,通过追踪发现是在调用另外的jar时报的错。com.rational.test.ft.script.RationalTestScript应该是它的超类为什么找不到,编译都正常。另外想知道RFT编译和执行是否使用同一环境(构建路径)。由于刚开始使用RFT请多多指教...
作者: sunnyhgj    时间: 2010-1-28 14:14
package AppObject;
import resources.AppObject.GetterHelper;
import com.rational.test.ft.*;
import com.rational.test.ft.object.interfaces.*;
import com.rational.test.ft.object.interfaces.SAP.*;
import com.rational.test.ft.object.interfaces.WPF.*;
import com.rational.test.ft.object.interfaces.dojo.*;
import com.rational.test.ft.object.interfaces.siebel.*;
import com.rational.test.ft.object.interfaces.flex.*;
import com.rational.test.ft.object.interfaces.generichtmlsubdomain.*;
import com.ibm.rational.test.ft.object.interfaces.sapwebportal.*;
import com.rational.test.ft.script.*;
import com.rational.test.ft.value.*;
import com.rational.test.ft.vp.*;
import java.util.Vector;
import ibm.tools.ClassGenerator;

/**
* Description   : Functional Test Script
* @author Administrator
*/
public class Getter extends GetterHelper
{       
        public void testMain(Object[] args)
        {
                try{               
                        Vector v = new Vector();
                        v.addElement (new Login ());
                        new ClassGenerator().updateScripts(v);
                }catch(Throwable e){
                        System.err.println(e);
                }       
        }
}

引入的包及脚本如上
作者: xiaosan51test    时间: 2010-2-2 15:15
标题: 我也有一样的错误
昨天一直被这个问题困扰,找不到原因出在何处。
今天,重新建了一个项目,按步骤一步步走,最后运行脚本,pass。
比较了一下之前project和当前project的buildpath,不一样。
于是,我把之前project的buildpath修改成跟现在的一样的。运行getter脚本,pass。
不知道能否解决楼主的问题。
作者: dennyqiang    时间: 2010-5-13 15:33
我想有必要跟大家说明一下,ITCL框架其实是在RFT的早期时代使用的,现在RFT的新版本中已经完全实现了这一框架,大家直接使用RFT其实就在使用ITCL这一框架中的基本思想,比如生成Getter方法,当我们将对象添加到脚本中时,已经自动为我们生成了对象的Getter方法。

至于分成AppObject, Task, Testcase三层,这完全不需要框架实现,不就是自己建三个目录的事儿嘛,其它的嘛,无非就是对框架的理解和运用。我会在RFT连载中与大家共同探讨这个问题。

框架中封装的一些实用工具到是值得参考一下。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2