接口测试平台:支持多线程执行(压测)

2021-03-14 07:38

阅读:475

标签:软件   线程池   size   test   商务   执行   not   封装   研究   

接口测试平台:支持多线程执行(压测)

技术图片

技术图片
技术图片
由于testng本身是支持多线程执行的,我们只需要调用testng的多线程就可以。

集合详情内新增了两个字段:threadPoolSize和repeatTimes,对应线程数和重复执行次数。
技术图片

Server端代码,新增了一个MultiThreadingListener监听类,用以修改testng的InvocationCount和ThreadPoolSize。(详细用法同学们可以百度自行搜索“testng注解”)

public class MultiThreadingListener implements IAnnotationTransformer {

    @Override
    public void transform(ITestAnnotation annotation, Class testClass,
                          Constructor testConstructor, Method testMethod) {

        // 设置线程执行次数(重复次数 * 线程池内线程数)
        annotation.setInvocationCount(ApiTestConfig.repeatTimes * ApiTestConfig.threadPoolSize);
        // 线程池内线程数
        annotation.setThreadPoolSize(ApiTestConfig.threadPoolSize);
    }
}

在collectionExcute内,对threadPoolSize和repeatTimes进行赋值,同时在测试执行调用监听类的时候,带上MultiThreadingListener。(collectionExcute的完整代码可参考《接口测试平台:支持混合Case的执行(Http\Dubbo\Sql)》)
技术图片

然后将线程数设置为2,重复次数设置为3,可以看到每个case会被重复执行6次,并且分属于两个不同的线程id。
技术图片

到此,接口测试平台的“多线程执行(压测)”就完成啦,有疑问的小伙伴欢迎在文章下方留言,我会根据问题不断优化文章内容!

  • End -
  • 软件测试君 -

我们只研究那些
你感兴趣的技术

喜欢我们就长按下方图片扫码关注吧
技术图片

· 猜你喜欢的文章 ·

1、刚做测试工作一年的时候,我是怎样的?
2、请问,软件测试中,购物车的测试点有哪些?
3、四个类搞定分层自动化测试框架
4、关于接口测试看这篇文章就够了
5、python接口自动化学习笔记(封装方法用于读取excel)


技术图片

作者@简单随风%E7%BC%96%E8%BE%91@%E7%B3%96%E5%B0%8F%E5%B9%BD
br/>编辑@糖小幽
图片@来源于网络
商务合作请联系微信:sofeicoffee

接口测试平台:支持多线程执行(压测)

标签:软件   线程池   size   test   商务   执行   not   封装   研究   

原文地址:https://blog.51cto.com/15009374/2553874


评论


亲,登录后才可以留言!