-
利用loadrunner测试ORACLE存储过程的性能
2010-07-07 15:52:33
利用loadrunner测试ORACLE存储过程的性能文章出处:51testing博客 作者:北北 发布时间:2006-06-13首先需要安装 LR的.NET ADD-IN ,在开发环境编写代码,做数据库连接,然后调用执行存储过程。
装好以后,打开程序,应该看到菜单栏里多了一个:
然后添加一个LR项目:
之后就可以编码了,我写了个代码,如下:using System;
using System.Runtime.InteropServices;
using System.ComponentModel;
using System.Data;
using System.Data.OracleClient;
using ShangXin.Data;
using System.Collections;
using System.Web;
namespace LoadRunnerUser
{
/// <summary>
/// Summary description for VuserClass.
/// </summary>
[ClassInterface(ClassInterfaceType.AutoDual)]
public class VuserClass
{
LoadRunner.LrApi lr;
protected System.Data.OracleClient.OracleDataAdapter oracleDA;
protected System.Data.OracleClient.OracleCommand loadCommand;
protected System.Data.OracleClient.OracleConnection oracleConnection;
public VuserClass()
{
// LoadRunner Standard API Interface :: DO NOT REMOVE!!!
lr = new LoadRunner.LrApi();
}protected System.Data.OracleClient.OracleConnection GetOracleConnection()////sqlConnection
{
if (oracleConnection==null)
oracleConnection=new System.Data.OracleClient.OracleConnection();
oracleConnection.ConnectionString="User Id=test;Password=write;Data Source=escalade";
return oracleConnection;
}
// ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
public int Initialize()
{
// TO DO: Add virtual user's initialization routinesreturn lr.PASS;
}// ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
public int Actions()
{
try
{
lr.start_transaction("TestGetWithDrawOrderByCode");
System.Data.OracleClient.OracleConnection conn = new OracleConnection("User Id=test;Password=write;Data Source=escalade");
System.Data.OracleClient.OracleCommand comm = new OracleCommand();
comm.Connection = conn;
comm.CommandText = "BILL.GetWithDrawOrderByCode";
comm.CommandType = CommandType.StoredProcedure;
//输入参数
System.Data.OracleClient.OracleParameter param1=comm.Parameters.Add("V_CODE",OracleType.VarChar,20);
param1.Direction = ParameterDirection.Input;
param1.Value ="TH15";
//输出参数
System.Data.OracleClient.OracleParameter param2=comm.Parameters.Add("RETCURSOR",OracleType.Cursor);
param2.Direction = ParameterDirection.Output;
DataTable dt = new DataTable();
oracleDA = new System.Data.OracleClient.OracleDataAdapter();
oracleDA.SelectCommand = comm;
oracleDA.Fill(dt);
int iCount=Convert.ToInt32(dt.Rows.Count.ToString());
if(iCount>0)
lr.end_transaction("TestGetWithDrawOrderByCode",lr.PASS);
else
lr.end_transaction("TestGetWithDrawOrderByCode",lr.FAIL);
}catch(Exception ex)
{
string error = ex.Message;
}return lr.PASS;
}// ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
public int Terminate()
{
// TO DO: Add virtual user's termination routinesreturn lr.PASS;
}}
}记得添加必要的引用,具体使用灵活掌握吧。
-
loadrunner测试oracle10g时遇到的问题
2010-07-05 16:18:47
" + __flash__argumentsToXML(arguments, 0) + "";this.CallFunction(flashFunction);} } window[movieName] = realMovie; } } var eim = new ExternalInterfaceManager(); eim.registerMovie("ShockwaveFlash1"); eim.registerMovie("ShockwaveFlash2"); eim.initialize(); loadrunner测试oracle10g时遇到的问题
来源: 测试中国
LoadRunner®是一种预测系统行为和性能的工业标准级负载测试工具。它通过模拟数据以千万计用户来实施并发负载来对整个企业架构进行测试,来帮助您更快的查找和发现问题。关于LoadRunner®更全面的描述及使用,请参考《LoadRunner 使用手册》或Mercury Interactive 公司提供的联机帮忙文档。
LoadRunner这个商用性能测试工具就不多说了。我感兴趣的是如何使用LR8.1测试 Oracle10g性能。第一次做的话,会遇到不少问题,如下:
问题1:
用LoadRunner8.1破解版测试 Oracle10g,结果遇到如下的错误信息:
Error... You do not have a license for this Vuser type.
Please contact Mercury Interactive to renew your license.
解决方法:使用了另外一个100用户的全协议license。
问题2:
测试run起来之后,会有好多Vuser出现Error,具体如下:
Action.c(37): Error: lrdo_ora8_exec: "OCIStmtExecute" return-code=OCI_ERROR,error-code=00054:
解决方法:
把
lrd_ora8_exec(OraSvc1, OraStm<i>, 0, 0, &uliRowsProcessed, 0, 0, 0, 0, 0);
改为:
lrd_ora8_exec(OraSvc1, OraStm<i>, 0, 0, &uliRowsProcessed, 0, 0, 0, 0, 1);
问题3:Action.c(13): Error: lrdo_server_attach: "OCIServerAttach" return-code=OCI_ERROR, error-code=12514:
解决办法:开启数据库服务器监听,启动数据库服务器。
用LR测试Oracle10g,启动VuGen并进行相应的设置。启动sqlplus,开始录制。
录制完成之后,使用Controller分发负载,但是最后测试数据只有如下4条性能曲线:
Running Vusers
Trans Response Time
Trans/Sec(Passed)
Total Trans/Sec(Passed)
其余的 Throughput
HTTP Responses per Second
Connections 等等
这些性能统计项显示为灰色,没有统计数据。是不是哪儿设置的有问题呢?
解决:因为sqlplus.exe是一个win32程序,那么在测试的过程中只统计上面的四项,它不
会统计Throughput这些Web测试才有的性能曲线。
所以,如果想对数据库服务器测试的更全面,这个时候就要使用isqlplus来发出查询。
1)在DB server上启动isqlplus服务:isqlplusctl start
2)启动VuGen,在客户端(压力机)启动isqlplus的Web页面
3)输入用户名、密码,我这里采用scott/tiger@lr
OK!录制完成之后,施加压力执行测试。顺利结束之后,可以看到如下曲线已经抓取出来
了:
Throughput
HTTP Responses per Second
Connections
所剩的工作就是如何分析性能数据了。
问题5:
Action.c(26): Error: C interpreter run time error: Action.c (26): Error -- Unresolved symbol : lrd_session_begin.
解决:
在vuser_init中添加 #include "lrd.h"
问题6:
Action.c(41): Error: lrdo_ora8_exec: "OCIStmtExecute" return-code=OCI_ERROR, error-code=00054:
解决:同问题1
问题7:
Starting iteration 1.
Starting action Action.
Action.c(13): Error: lrdo_server_attach: "OCIServerAttach" return-code=OCI_ERROR, error-code=12541:
Action.c(13): Error: ORA-12541: TNS: 没有监听器
Action.c(13): server_attach: ERROR, return-code=LRDE2009. ServerHandle=OraSrv1, ServerID="lr"
解决:启动数据库服务器,开启listener。如果需要使用isqlplus的话,开启服务:$isqlplusctl start
问题8:
Action.c(13): Error: lrdo_server_attach: "OCIServerAttach" return-code=OCI_ERROR, error-code=12514:
Action.c(13): Error: ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME
Action.c(13): server_attach: ERROR, return-code=LRDE2009. ServerHandle=OraSrv1, ServerID="lr"
解决:
检查压力机Oracle客户端解析文件tnsnames.ora,确保正确配置了这个文件。
检查测试的数据库服务器,确保正确配置了监听,并已经开启。
性能监视相关。
问题9:压力机资源监视
Monitor name :Windows Resources. Cannot connect to machine lr071129.Reason: 找不到网络路径。
解决:
在弹出的Add Machine窗口,name项输入IP地址,正确选择Platform。
问题10:UNIX资源监视问题
Monitor name :UNIX Resources. Cannot initialize the monitoring on 10.152.**.**. Error while creating the RPC client. Ensure that the machine can be connected and that it runs the rstat daemon (use rpcinfo utility for this verification). Detailed error: RPC: Failed to create RPC client.
RPC-TCP: Failed to establish RPC server address.
RPC-TCP: RPC Server <100001, 3, 17> is not registered on host '10.152.11.26'. (entry point: CFactory::Initialize). [MsgId: MMSG-47190]
解决:
[root@oratest ~]# cd /etc/rc.d/init.d
[root@oratest init.d]# ll | grep rstatd*
-rwxr-xr-x 1 root root 1009 May 4 2005 rstatd
[root@oratest init.d]# ./rstatd start
Starting rstat services: [ OK ]
[root@oratest init.d]#
性能测试学习笔记1——选型、下载、安装、破解
2010-06-24 09:24:47
一、选择软件
首先描述一下我需要测试的软件环境:.net #c+oracle10g+webservice
应用环境:对外——最多要求200个客户端通过webservice远程接入
对内——最多要求100个客户端直接通过软件访问数据库
就知道loadrunner功能强大,之前也看过一些,所以还是选这个进行测试。
二、软件下载
这是在论坛上找的,可以下载。
开始下载了9.5的,发现需要frework3.0,我们软件必须在2。x的版本才可以运行,因此又重新下载9.1的,如果还是版本高,那只能再下8.0的了。
DVD, LoadRunner9.1 for windows
http://h30302.www3.hp.com/prdown ... D_CENTER&dlm=ON
DVD, LoadRunner9.5 for windows
http://h30302.www3.hp.com/prdown ... D_CENTER&dlm=ON
DVD, Diag 7.0 for J2EE, .NET and ERP/CRM(LoadRunner的插件)
http://h30302.www3.hp.com/prdown ... D_CENTER&dlm=ON
三、软件安装
最终选用LoadRunner9.1 for windows进行安装可是刚刚点了setup,就提示
---------------------------
HP LoadRunner 9.10
---------------------------
Setup has determined that a previous installation has not completed.
You should restart the system in order to complete this process.
---------------------------
确定
---------------------------
赶紧搜解决方法,一下是成功解决问题的方法。
**解决办法:1)进入注册表:运行/regedit;
2)进入路径:KEY_LOCAL_MACHINE/SYSTEM/Contrl/SessionManager;
3)在Session Manager右侧的主试图中,双击PendingRenameOperations,在弹出的窗口中,将临时文件删除。
4)重新运行LR安装文件即可。
未完待续。。。。。。。。
HP最新测试工具下载地址
2010-06-24 09:21:33
HP最新测试工具下载地址
DVD, LoadRunner9.1 for windows
http://h30302.www3.hp.com/prdown ... D_CENTER&dlm=ON
DVD, LoadRunner9.5 for windows
http://h30302.www3.hp.com/prdown ... D_CENTER&dlm=ON
DVD, Diag 7.0 for J2EE, .NET and ERP/CRM(LoadRunner的插件)
http://h30302.www3.hp.com/prdown ... D_CENTER&dlm=ON
CD, LoadRunner 9.10 UNIXnux
http://h30302.www3.hp.com/prdown ... =HP_DOWNLOAD_CENTER
CD, LoadRunner 9.5 UNIXnux
http://h30302.www3.hp.com/prdown ... =HP_DOWNLOAD_CENTER
software, Quality Center 10 part for Linux_Solaris
http://h30302.www3.hp.com/prdown ... D_CENTER&dlm=ON
software, Quality Center 10 part for windows
http://h30302.www3.hp.com/prdown ... D_CENTER&dlm=ON
DVD, QTP 10 English
http://h30302.www3.hp.com/prdown ... D_CENTER&dlm=ON
HP Performance Manager Software 8.1 Windows Evaluation
http://h30302.www3.hp.com/prdown ... 85.iso?ordernumber=
LoadRunner 9.5 安装
2010-06-23 14:03:46
LoadRunner 9.5 安装
软件测试 2010-04-20 15:51:57 阅读120 评论1 字号:大中小
今天从网上找资料把LR安装好了,在这里留个记号!
1.下载LoadRunner安装程序
如果从官网上下,还需要先注册,所以我就直接从xunlei里搜了一个下的(大概1.7G),下面是英文版的下载地址:
2.安装LoadRunner
下载下来的是一个.zip文档,解压出来后是一个ISO文件,需要用虚拟光驱加载一下(我是用的Daemon tool),然后就可以直接安装了,安装的时候选择完全安装就好了。中间需要先下载个.netframework3.5
3.破解LoadRunner
因为装好之后是试用10天的license,为了我们可以更好的使用,就不得不破解一下咯。我是从CSDN上下了个破解包,挺好的,还有安装教程呢,地址如下:
http://dl4.csdn.net/fd.php?i=174913941029693&s=95c36f0f0d7e02f987882c4e88e534fa
下了之后就是按教程上的来就好了。
4.使用教程
这个是LoadRunner 9.5的中文使用手册,我觉得很有用,因为本人看english还是有点吃力的。。下面是下载地址
http://dl5.csdn.net/fd.php?i=603415464118388&s=f34b94b2fc0850d19b24be6c42f1d6b4
最后说一下,我是个人学习下,如果是商业用途,还是建议大家支持下正版咯。。。反正是公司出钱。。
测试基础——基本概念1
2009-03-12 12:14:08
什么是软件测试
软件测试是针对软件生命周期各个阶段的产物,发现被测产物存在的或潜在的问题及缺陷的过程,他的最终目的是发现软件问题。
测试的基本要点
1、从用户需求出发;2、测试前要有测试计划;3、测试中要有正确的和不正确的测试用例;4、对每个测试结果要进行回归测试;5、建立bug及case库,对测试过程集中管理;6、用最短的时间建立最有效的测试用例
什么是软件质量
软件质量管理是对软件生命周期整个过程以及过程产物的一个系统管理,他侧重于过程。
控制质量的基本要点
各个软件开发过程都要进行过程管理,关键过程点要进行质量评审。不仅要关心外部质量问题也要关心内部质量问题。
软件测试和软件质量的异同点
软件质量重过程和产物,软件测试重产物。二者都是已用户的需求出发,最终目的是满足用户需求。软件测试是对各个软件开发阶段产物的验证过程,而软件质量是对软件开发过程的合理性有效性的一个验证,通过对过程的检测和调整,提高软件开发效率,提高软件的可靠性。
软件测试过程
准备:测试工具,测试配置,业务知识——》计划:测试计划,测试规格书——》设计:测试用例——》执行:执行用例,记录结果,提交bug——》总结:阶段测试报告——》回归测试:验证bug
依次过程,每达到一个测试点就进行如上述工作
软件测试模型
一会儿画图表示
软件测试类型
按技术划分:黑盒,白盒,灰盒
按用户划分:软件开发方测试,用户测试,第三方测试
按开发过程划分:单元测试、集成测试、确认测试、系统测试
北京软考开始报名了,准备考软件评测师
2009-03-12 11:03:29