首页 文章

压力测试应用程序与线程池执行程序

提问于
浏览
1

好吧,我有以下问题 . 我想强调测试部署在Tomcat服务器上的我的应用程序 . 我要测试的案例如下:用户上传文件,文件转码为其他格式,新文件下载回用户的设备 . 我用一个线程模拟每个用户(三个操作建模为三种方法) . 我创建了一个类型为newFixedThreadPool(30)的线程池 Actuator ,并且我在实现Runnable的类的run方法中执行这三个方法,例如在for循环中调用300次迭代(每次迭代是一个新用户) . 主要:

ExecutorService executor = Executors.newFixedThreadPool(NTHREDS);

for (int i = 0; i < 300; i++) {
    Runnable worker = new MyRunnable(i);
        executor.execute(worker);
    }
executor.shutdown();

并在MyRunnable类中

public void run(){testPostFile(); testPSXFileRename(); testGetFile(); }

public static void testPostFile() {}
    public static void testPSXFileRename() {}
    public static void testGetFile();

我的方法是否正确?或者是我错过了棘手的部分

  • 第1个主题= 1个用户(发布,转码,获取)

  • 第二线程= 1用户(发布,转码,获取)等

1 回答

  • 2

    您似乎正在尝试进行负载测试和一些单元测试 . 尝试并分离您的任务 .

    在负载/压力测试方面,JMeter是一种很好的开源方式来执行负载测试 . JMeter允许您录制脚本,然后您可以基于此模拟负载 . 您可以在youtube上搜索getting started videos .

    如果您正在进行单元测试,请使用JUnit .

    让您的单元测试确保功能正常,并进行负载测试以确定服务器在负载下的反应 .

相关问题