LoadRunner调用java函数测试oracle

  测试oracle的方法有很多,可以使用loadrunner的oracle协议直接调用oracle进行测试,也可以调用开发的java程序对oracle进行测试,下面我们来介绍下第二种方法!

一、环境变量配置:JDK1.6

  变量名:JAVA_HOME

  变量值:C:\Program Files\Java\jdk1.6.0

  变量名:CLASSPATH

  变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;C:\programfile\loadrunner\classes;C:\programfile\loadrunner\lib;%JAVA_HOME%\lib\oracle_11g_11.2.0_jdbc_ojdbc6.jar

  变量名:Path

  变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

二、loadrunner配置

  选择协议:Java Vuser

  数据库驱动包: Oracle_11g_11.2.0.1.0_JDBC_ojdbc6.jar

  设置jdk和loadrunner环境变量:

  运行时设置-classpath:loadrunner/classes,loadrunner/lib,jdk/lib/dt.jar,jdk/lib/tools.jar,oracle_11g_11.2.0_jdbc_ojdbc6.jar

三、LoadRunner调用java类,类名如:oraclDBtest

  1、oraclDBtest.class文件放在loadrunner->classes->com文件夹中
  2、使用import com.oraclDBtest在脚本中调用;
 
loadrunner函数:
  import lrapi.lr;
  import com.oraclDBtest;
  public class Actions
  {
  public int action() throws Throwable {
      lr.start_transaction("start");
        oraclDBtest.testSelet();
        lr.output_message("test_action");
        lr.end_transaction("start", lr.AUTO);
    return 0
  };

Java函数:

查询当前PGA大小的方法如下:

SQL> show parameter pga;

NAME                      TYPE        VALUE

------------------------------------ ----------- ------------------------------

pga_aggregate_target      big integer 520M

通过以上SQL语句,可以看到当前的PGA大小为520M。

通过sql语句的形式查看SGA的大小:

SQL> show parameter sga;

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

lock_sga                             boolean     FALSE

pre_page_sga                         boolean     FALSE

sga_max_size                         big integer 2G

sga_target                           big integer 2G

以上的结果显示,SGA的最大大小为2G。

查询shared_pool_size建议值的方法如下:

通过SQL语句,查询v$shared_pool_advice视图

select t.SHARED_POOL_SIZE_FOR_ESTIMATE "SP",

t.ESTD_LC_SIZE                  "EL",

t.ESTD_LC_MEMORY_OBJECTS        "ELM",

t.ESTD_LC_TIME_SAVED            "ELT",

t.ESTD_LC_TIME_SAVED_FACTOR     "ELTS %",

t.ESTD_LC_MEMORY_OBJECT_HITS    "ELMO"

from v$shared_pool_advice t;

  很多时候服务器可能会经历CPU消耗100%的性能问题。排查系统的异常,这类问题通常都是因为系统中存在性能低下设置错误的SQL语句,消耗大量的CPU所致。通过linux的top命令,登陆系统,查看高度消耗CPU的oracle进程,记录下来该进程的PID编号,通过下面的图例,来说明排查的方法:

输入进程号为26113,就可以看到如下的sql语句:

对消耗资源大的sql语句进行优化。

LoadRunner调用java函数测试oracle的更多相关文章

  1. LoadRunner调用Java程序—性能测试

    为了充分利用LoadRunner的场景控制和分析器,帮助我们更好地控制脚本加载过程,从而展现更直观有效的场景分析图表.本次将重点讨论LoadRunner如何调用Java测试代码,完成压力测试. 通常我 ...

  2. LoadRunner调用Java程序—性能测试-转载

    LoadRunner调用Java程序—性能测试   为了充分利用LoadRunner的场景控制和分析器,帮助我们更好地控制脚本加载过程,从而展现更直观有效的场景分析图表.本次将重点讨论LoadRunn ...

  3. Android jni c/c++线程通过CallVoidMethod调用java函数出现奔溃问题

    最近在移植网络摄像机里的p2p库到android平台,需要用到jni,最近在c线程了调用java函数的时候 出现一个问题,假如在同一个线程调用java函数是没问题的,但在一个c线程了调用java函数就 ...

  4. JS调用Java函数--DWR框架

    (1)dwr与ssh框架整合教程dwr框架介绍. DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJA ...

  5. Android NDK 学习之调用Java函数

    本博客主要是在Ubuntu 下开发,且默认你已经安装了Eclipse,Android SDK, Android NDK, CDT插件. 在Eclipse中添加配置NDK,路径如下Eclipse-> ...

  6. Android在使用WebView时,通过Javascript调用JAVA函数

    webView = (WebView) findViewById(R.id.article_webview); //WebView启用Javascript脚本运行 webView.getSetting ...

  7. Android JNI c/c++调用java 无需新建虚拟机

    近期通过研究SDL源码 得出android JNI  c/c++调用java 无需新建虚拟机: 具体步骤如下 第一步获得:两个参数 JNIEnv和jclass void Java_com_Test_A ...

  8. JNI学习笔记_C调用Java

    一.笔记 1.C调用Java中的方法,参考jni.pdf pg97可以参考博文:http://blog.csdn.net/lhzjj/article/details/26470999步骤: a. 创建 ...

  9. 第2篇-JVM虚拟机这样来调用Java主类的main()方法

    在前一篇 第1篇-关于JVM运行时,开篇说的简单些 中介绍了call_static().call_virtual()等函数的作用,这些函数会调用JavaCalls::call()函数.我们看Java类 ...

随机推荐

  1. ZOJ Problem Set - 2818

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1818 一开始想着用循环做,看了别人的解法才发现根本没必要,比较根号n就行了 # ...

  2. tomcat-虚拟目录的映射

    虚拟目录的映射 1.新建 ${tomcat安装目录}\conf\Catalina\localhost\xxx.xml 文件. 文件内容: <Context  path="/xxx&qu ...

  3. 如何使Wpf浏览器应用程序被完全信任运行

    原文地址链接:http://blogs.microsoft.co.il/maxim/2008/03/05/how-to-run-wpf-xbap-as-full-trust-application/ ...

  4. c# 使用 Newtonsoft.Json 序列化json字符串以及,反序列化对象

    1. 序列化 对象 /** 使用 Newtonsoft.Json 序列化对象 **/ [WebMethod] public String getPersonInfos() { // 初始化数据 Lis ...

  5. 【element+vue后台页面】Vue-element-admin

    https://segmentfault.com/a/1190000009275424

  6. VUE知识day3_vue插件总结

  7. Head First HTML和CSS(一)

    Web语言 HTML和CSS是我们用来创建网页的语言. Web服务器存储并提供由HTML和CSS创建的网页,浏览器获取页面,并根据HTML和CSS显示网页的内容 HTML是超文本标记语言(HyperT ...

  8. Ubuntu下Visual Studio Code的配置

    最近在Ubuntu系统里用Visual Studio Code编写vue代码时,在build的时候老是报错,后来发现原来Visual Studio Code里默认Tab是4个空格,而vue代码要求ta ...

  9. ASP.NET错误处理的方式(一)

    对Web应用程序来说,发生不可预知的错误和异常在所难免,我们必须为Web程序提供错误处理机制.当错误发生时,我们必须做好两件事情:一是将错误信息记录日志,发邮件通知网站维护人员,方便技术人员对错误进行 ...

  10. 对于当下国产CPU如火如荼有感

    国家在国家战略层面去做国产CPU这个事情,从初衷来说是好的.国产CPU战略如果能够实现,则会大大加强我国在计算机产业领域从头到尾的话语权与技术竞争力.但是个人觉得,事情不是那么简单.我将从下面几个方面 ...