JMeter设计模式
来源:互联网 发布:ubuntu trusty 编辑:程序博客网 时间:2024/04/29 13:59
JMeter是一个纯Java项目,最早用于测试tomcat,版本2.13-SNAPSHO源码含1,083 个 Java文件,185行/文件,共计201,178行代码,其中core目录含61,972行Java代码,这是一个非常庞大而又历史悠久的项目。有时候,面对一个非常复杂的Java项目的源码时,我们可以先对里面涉及到23种涉及模式的类进行隔离分析,这样剩余代码也就不难理解了吧。
1 单例模式
JMeter采用了三种线程安全方式实现单例模式。包括在内部定义一个单例的静态私有Holder类、直接用synchronized修饰getInstance()和双重校验锁。
1.1 JMeterUtils -- 定义一个内部静态单例Holder类
用私有静态类LazyPatternCacheHolder作为单例的容器,保证在类加载时完成实例化
// 获取单例
1.2 SSLManager -- 用synchronized修饰getInstance()
1.3 XPathUtil -- 用synchronized修饰getInstance()
1.4 ObjectFactory -- 定义一个内部静态单例Holder类
1.5 ActionRouter -- 双重校验锁
2 工厂模式
2.1 ObjectFactory -- 简单工厂
2.2 MenuFactory--工厂方法
1.3 HTTPSamplerFactory -- 工厂方法
3 组合模式
定义:将对象组合成树形结构以表示部分整体的关系,Composite使得用户对单个对象和组合对象的使用具有一致性。
3.1 TestElement -- 测试元件接口
测试计划、逻辑控制器、样本、线程组等等实现了测试元件接口。单个测试计划由若干测试元件对象组合而成。例如逻辑控制器对象可以相互嵌套,样本和逻辑控制器可以相互嵌套。这种设计模式,决定了测试计划内存数据结构是一颗树。
3.3 JMeterGUIComponent
JMeter的GUI组件显然也是一个组合模式。这些GUI组件主要是用于测试元件的配置,测试元件类一般与GUI组件类,一一对应。
0 0
- JMeter设计模式
- jmeter- 函数测试模式
- JMeter 非用户界面模式
- jmeter 录制排除模式
- JMeter Vuser及场景设计
- Jmeter 非GUI模式运行
- Jmeter的Non_GUI模式,命令行模式
- 命令行模式运行jmeter,主从方式运行jmeter
- JMeter非GUI模式自动生成测试报告
- win下jmeter运行NON GUI模式
- Jmeter
- Jmeter
- jmeter
- JMeter
- jmeter
- JMeter
- Jmeter
- Jmeter
- Android传感器专题
- Linux常用命令:cd命令
- 今天很有成效,代码优化,性能提高了近10倍
- Node.js Buffer(缓冲区)
- Android开发之耦合性
- JMeter设计模式
- opencv Mat IplImage*相互转换
- Java编程入门(词汇表)
- VirtualBox四种网络连接方式的区别联系
- 关于Tuxedo NLS问题
- Node.js Stream(流)
- spring整合dubbo-2.5.3(使用TCP广播或者zookeeper 暴露和发现服务)
- iOS蓝牙4.0 CoreBluetooth框架开发
- Android: Your project contains error(s),please fix them before running your application问题