51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5324|回复: 7
打印 上一主题 下一主题

[原创] 编写java语言脚本测纯JAVA程序的步骤(新手参考)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-8-13 15:37:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何在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程序了。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-8-13 16:21:42 | 只看该作者
sdlkfj2 做个标记,留作后用,楼主辛苦
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-8-14 10:20:28 | 只看该作者
sdlkfj3
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-8-14 10:24:27 | 只看该作者
顶一下~~
支持LZ的共享精神~~sdlkfj3
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2007-8-27 16:08:42 | 只看该作者
谢谢同志们的鼓励。呵呵,终于可以在51发篇非“求助”帖子了sdlkfj5
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-8-27 22:18:15 | 只看该作者
还有个问题是,在java vuser协议中,运行controller调用vuser脚本时,如果不换成进程运行的话,很有可能报错,而且概率很高,就是因为不能保证程序中运行的所有线程是安全的.这点帮助文件中有说明,测试java的cs架构程序的性能测试,还有很多问题.大多数都是关于环境变量配置的事情.
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2007-8-29 10:28:24 | 只看该作者

to:wssgily

这个问题我觉得可以深究一下。建议您可以另写一篇帖子sdlkfj5

到时大家肯定有很多好点子sdlkfj2
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2008-5-7 19:58:22 | 只看该作者

ding

好贴
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-8 12:36 , Processed in 0.070836 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表