51Testing软件测试论坛

标题: 编写java语言脚本测纯JAVA程序的步骤(新手参考) [打印本页]

作者: serena_meledy    时间: 2007-8-13 15:37
标题: 编写java语言脚本测纯JAVA程序的步骤(新手参考)
如何在Loadrunner中录制java语言脚本?尤其对于刚开始学习loadrunner 的新手而言,往往可以通过自己编写一个小java 程序来学习编写脚本。我自己就是编写了一个往access里插入数据的程序,然后通过这个程序来学习如何编写脚本的。

因为我对c不熟,而vugen默认的web协议录制下来的程序是c语言的。所以我刚开始想录制java语言脚本。但是在网上搜索了很多资料,证明loadrunner 7.8不能直接录制java语言脚本(如果是选择java vuser 协议的话。但winsocket可以,其他的协议就不清楚了)。郁闷好久之后,我只能任命的手工编写java脚本了。后来发现还不算太麻烦。所以今天有时间就把网上搜集来的资料我的经验给大家分享。

如果有同学也遇到同样问题,可以借鉴。如有不对,请见谅。sdlkfj5 好了,废话少说,正文如下:


==========================================================


1、首先你肯定要有用来测试的纯JAVA的测试代码,即用来调用你要测试的的后台处理的程序,这段代码建议你先在Java的开发环境下调试通过,用Jbuilder或Ecllips,因为用LR直接调代码未免太痛苦了。

2、然后LR选择协议应该是Java Vuser,将你上述的代码拷到Action里面

3、然后在Runtime setting的Class path里面,把你的测试代码中需要的包一一加上。比如你所要测试的后台程序的包,还有所要用到的各类方法等的包。要是不太清楚需要哪些包可以问程序员,他们一般比较清楚的。

4、最后就可以在LR中调试运行该程序了。再视提示的错误来更改。

另,如果调试时出现需要什么类等等,那就是说你要在测试代码中用Import来导入这个类,当然前提这个类所在的包你必须先指定进来。所以说建议先用Java开发工具来调你的测试代码,调通过了再拷过来比较好,不然LR的很多提示都不明白什么意思,直接写代码的话一些方法也不能自动寻找,会很累。


==========================================================

举例说明1(直接将被测程序打包):

我要测试的程序路径为为  d:\workspace\testing\src\sql\Insert.java;编译后的类路径为为  d:\workspace\testing\class\Insert.java;

1 编写Insert.java并编译运行,确保无语法错误;

2 用jar命令将其Insert.class打包,命名为sql.jar.假设放在d:\sql.jar
   运行cmd  ----->  进入d盘(输入  d:)  ----->  进入类所在文件(输入  cd workspace\testing\class)  ----->  打包(输入  jar cvf sql.jar sql)
3 在vugen中新建脚本,选择java vuser协议;
4 在Runtime setting的Class path里面,把jdk的路径(就是环境变量里边的CLASSPATH)和要用到的包(刚才的 d:\sql.jar)加上。
5 在action里直接创建Insert类的实例,并调用其方法。

==========================================================



举例说明2(直接将被测程序粘贴过来。与上面方法相比,删除第2步,其余大致相同):

我要测试的程序路径为为  d:\workspace\testing\src\sql\Insert.java;编译后的类路径为为  d:\workspace\testing\class\Insert.java;

1 编写Insert.java并编译运行,确保无语法错误;

2  在vugen中新建脚本,选择java vuser协议;
3 在Runtime setting的Class path里面,把jdk的路径加上。
4 改造原有的Insert类:在action里直接粘贴Insert类中main部分的代码,删除掉Insert类的main函数;把import粘贴到脚本前面;其余部分直接组织成一个类(就是把public class改称class),粘贴。

=====================================================


这样应该可以编写java脚本测试简单的java程序了。
作者: 筷子    时间: 2007-8-13 16:21
sdlkfj2 做个标记,留作后用,楼主辛苦
作者: haiquan180    时间: 2007-8-14 10:20
sdlkfj3
作者: suoyi    时间: 2007-8-14 10:24
顶一下~~
支持LZ的共享精神~~sdlkfj3
作者: serena_meledy    时间: 2007-8-27 16:08
谢谢同志们的鼓励。呵呵,终于可以在51发篇非“求助”帖子了sdlkfj5
作者: wssgily    时间: 2007-8-27 22:18
还有个问题是,在java vuser协议中,运行controller调用vuser脚本时,如果不换成进程运行的话,很有可能报错,而且概率很高,就是因为不能保证程序中运行的所有线程是安全的.这点帮助文件中有说明,测试java的cs架构程序的性能测试,还有很多问题.大多数都是关于环境变量配置的事情.
作者: serena_meledy    时间: 2007-8-29 10:28
标题: to:wssgily
这个问题我觉得可以深究一下。建议您可以另写一篇帖子sdlkfj5

到时大家肯定有很多好点子sdlkfj2
作者: yumeiran    时间: 2008-5-7 19:58
标题: ding
好贴




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