1、Jmeter的优点和缺点
作用:
1. 接口测试
2. 性能测试 ----》内在(程序的算法)
3. 压力测试 ----》外在(外在的负载量)
4. Web自动化测试
5. 数据库测试
6. JAVA程序测试
优点:
1. 开源、免费
2. 支持多协议 ---》http、HTTPS、ftp、ftps .....
3. 小巧
4. 功能强大
缺点:
1、不支持IP欺骗
2、不支持前段页面的测试,所以要须要和Selenium配合来完成Web2.0应用的测试
Jmeter组件:基本使用
1、介绍:
进程:一个正在执行的程序就对应一个进程
线程:进程中的执行线索(一个进程有多个执行线程)
进程组:按照线程性质对线程进行分组
并发执行:多个线程共同执行。 特点:执行结束的顺序和线程的启动顺序不一定一致。
顺序执行:按照顺序的启动顺序挨个执行。
2、怎么使用?
2-1、三者的关系:
进程:测试计划
线程组:线程组
线程:线程组属性的线程数
2-2、默认情况下,线程组中的线程是并发执行的
每个线程都要执行组内的http请求
2-3、怎么设置线程组顺序指向性
勾选设计计划的第一个复选框(独立运行每一个线程组)
3、可以使用HTTP请求默认值抽取共同的Ip 端口号 协议 编码集等信息
测试计划--> 右击 --> 添加 --> 配置元件 --> http请求默认值
作用:通过复用属性简化实现,提高测试效率
2、Jmeter高级应用
1、线程组属性
属性1:线程数--->> 模拟用户数
属性2:时间值--->> 在指定时间内启动所有线程
属性3:循环值--->> 单个用户访问的次数
2、调度器
1、循环次数设置为永久
2、设置启用延时X和持续时间Y
在x秒访问服务器,并且持续Y秒
3、设置启动时间 M和 N时结束
在M时开始时间访问,在N时结束
注意:2和3实现不能同时使用,否则矛盾
3、Jmeter组件:参数化概述
1、参数就是动态的获取并设置数据
2、比如执行批量操作时,批量插入或批量删除,之前数据都是手工写的。每次执行完都需要修改一次,效率太低
参数化就是可以程序替代人工并设置数据: 安全 + 高效
4、Jmeter组件:参数化实现之 CSV Data Set Config(重点)
执行步骤简化:
1、Jmeter参数化实现组件之一
2、通过这个组件可以动态获取并设置数据,实现类似批量添加操作(执行一次,将多条数据插入到数据库)
执行创建流程和执行流程
5、Jmeter组件:线程主实现高级
Set up 线程组:最先执行的线程组
加载程序主体执行所需要的资源
Tear Down 线程组:最后执行的线程组
程序正式关闭之前,可以将数据保存到内存中
总结:
1、Jmeter
1-1:是Apaache公司使用的Java开发的测试工具
1-2
2、线程组
3、参数化之 CSV Data Set Config
4、特殊线程组