• script Ngrinder_TestRunnerInsertMysqlSingle.groovy


    s

    阿里巴巴Java开发规范手册.zip

    http://dl.iteye.com/topics/download/ffc4ddcf-8b65-3b3c-b146-96468e2baf40

     

    nGrinder 平台调试groovy压测脚本,成功!

     

    C:\Users\Lindows\workspace\GroovyTest\src\com\iteye\lindows\mysql\TestRunnerInsertMysqlSingle.groovy

    package com.iteye.lindows.mysql
    
    import junit.framework.Assert
    import net.grinder.script.GTest
    import net.grinder.scriptengine.groovy.junit.GrinderRunner
    import net.grinder.scriptengine.groovy.junit.annotation.AfterThread
    import net.grinder.scriptengine.groovy.junit.annotation.BeforeProcess
    import net.grinder.scriptengine.groovy.junit.annotation.BeforeThread
    import org.junit.Test
    import org.junit.runner.RunWith
    
    import java.sql.Connection
    import java.sql.DriverManager
    import java.sql.ResultSet
    import java.sql.Statement
    
    import static net.grinder.script.Grinder.grinder
    import static org.junit.Assert.assertTrue
    
    /**
     * java代码示例,连接数据库进行查询
     *
     * @author Lindows
     */
    @RunWith(GrinderRunner)
    class TestRunnerInsertMysqlSingle {
        public static GTest insertTable
        public static Connection conn;
        public static Statement stmt; //创建Statement对象
    
        @BeforeProcess
        public static void beforeProcess() {
            insertTable = new GTest(1, "插入表数据")
            try {
                Class.forName("com.mysql.jdbc.Driver");
                grinder.logger.info("成功加载MySQL驱动!");
                String url="jdbc:mysql://10.37.136.162:3306/performance_test";    //JDBC的URL
                String username = "performance_user";
                String passwd = "performance!QAZ";
                conn = DriverManager.getConnection(url, username, passwd);
                stmt = conn.createStatement(); //创建Statement对象
                grinder.logger.info("成功创建stmt!");
            } catch (Exception e) {
                e.printStackTrace()
            }
        }
    
        @BeforeThread
        public void beforeThread() {
            insertTable.record(this, "insertTable")
            grinder.statistics.delayReports=true
        }
    
        @Test
        public void insertTable() {
            try{
                grinder.logger.info("成功连接到数据库!");
                StringBuffer sql = new StringBuffer()
                sql.append("insert into tab_002(column_int,column_double,column_decimal,column_varchar_name,column_varchar_address,column_text,column_timestamp_create_time,column_timestamp_update_time) values (1000,300.25,600.98,'jack','")
                        .append("China BeiJing")
                        .append(new Random().nextInt(99999999))
                        .append("', 'work in SuNing for 3 years','2017-06-12 18:00:00','2017-06-13 15:00:00')")
                grinder.logger.info(sql.toString())
                Thread.sleep(new Random().nextInt(10)) //这里可以设置思考时间10ms
                assertTrue(!stmt.execute(sql.toString()))//执行sql insert,!stmt.execute(sql)该写法只于insert true确认
                //assertTrue(stmt.execute(sql));//执行sql query , !stmt.execute(sql)该写法只适用于query true确认
            }catch(Exception e) {
                e.printStackTrace();
            }
        }
    
        @AfterThread
        public void afterThread() {
            stmt.close();
            conn.close();
        }
    }

     C:\Users\Lindows\Desktop\lab\groovy\libs 

    asm-3.3.1.jar
    commons-lang-2.6.jar
    commons-lang3-3.3.2.jar
    commons-logging-1.0.4.jar
    grinder-core-3.9.1.jar
    grinder-dcr-agent-3.9.1.jar
    grinder-http-3.9.1.jar
    grinder-http-patch-3.9.1-patch.jar
    grinder-httpclient-3.9.1.jar
    grinder-httpclient-patch-3.9.1-patch.jar
    grinder-patch-3.9.1-patch.jar
    hamcrest-all-1.1.jar
    json-20090211.jar
    junit-dep-4.11.jar
    log4j-1.2.15.jar
    logback-classic-1.0.0.jar
    logback-core-1.0.0.jar
    mysql-connector-java-5.1.36 (1).jar
    ngrinder-core-3.4.jar
    ngrinder-groovy-3.4.jar
    ngrinder-runtime-3.4.jar
    ngrinder-sh-3.4.jar
    slf4j-api-1.6.4.jar

     junit  test运行异常:

    java.lang.RuntimeException: Please add 
    -javaagent:C:\Users\Lindows\Desktop\lab\groovy\libs\grinder-dcr-agent-3.9.1.jar
    in 'Run As JUnit' vm argument.
    at net.grinder.engine.process.JUnitThreadContextInitializer.initialize(JUnitThreadContextInitializer.java:72)
    at net.grinder.scriptengine.groovy.junit.GrinderRunner.initializeGrinderContext(GrinderRunner.java:142)
    at net.grinder.scriptengine.groovy.junit.GrinderRunner.<init>(GrinderRunner.java:112)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:29)
    at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:21)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:26)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.<init>(JUnit4TestReference.java:33)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestClassReference.<init>(JUnit4TestClassReference.java:25)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:48)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:452)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)

     

    解决一: -javaagent:C:\Users\Lindows\Desktop\lab\groovy\libs\grinder-dcr-agent-3.9.1.jar

     

    Debug As JUnit Test ,,,ok!

     

    end

  • 相关阅读:
    C#生成PDF总结
    Oracle删除当前用户下所有的表的方法
    C#操作oracle 到ExecuteNonQuery卡死不执行
    C#中事件的使用
    初探three.js光源
    d3.js 地铁轨道交通项目实战
    初探three.js
    d3.js 绘制北京市地铁线路状况图(部分)
    d3.js 共享交换平台demo
    d3.js 实现烟花鲜果
  • 原文地址:https://www.cnblogs.com/lindows/p/14390201.html
Copyright © 2020-2023  润新知