JMeter性能测试
职位描述:
职位类型:性能测试
发布时间:2018-12-06
有效日期:2019-01-14
基本要求:年龄不限性别不限
1、根据业务需求,设计完善的性能测试策略和方案;
2、组织性能测试工具选型、用例设计、测试脚本编写、环境配置和测试执行;
3、分析产品性能,出具完备的性能评估报告,指导产品上线。
4、 团队指导:指导部门人员进行性能测试工作,及其日常培训 具有3年以上的性能测试实践经验;
5、精通Load Runner、Jmeter等主流性能测试工具之一,熟练编写相应测试脚本,测试过复杂应用者尤
佳;
6、熟悉数据库编程,能熟练操作至少一种数据库,比如MySQL;
7、深入了解HTTP/TCP/IP等网络协议,熟悉J2EE web系统;
8、 熟练使用Linux,了解Linux原理,能够使用虚拟机搭建Linux服务器;
职位类型:工控/自动化/机械/机器设备
发布时间:2018-11-16
有效日期:2019-05-16
基本要求:年龄不限性别不限
工作地点:上海 徐汇区
职位描述:
工作职责 1.负责微服务架构下整体系统的非功能测试;
2.理解产品和技术需求,制定性能测试方案;
3.执行和分析性能问题,推进开发人员优化;
岗位要求
1.熟悉性能测试的整体流程和方法,能够分析需求和设计方案;
2.熟悉常用的测试工具,包括loadruner、jmeter,能够编写相关脚本;
3.理解微服务架构,能够规划全链路等测试方案;
4.熟悉mysql等数据库和sql优化;
5.熟悉JVM的性能分析和优化;
6.熟悉持续化集成等工具;
7.能够建设团队自动化测试、CICD或开发测试工具优先。
8.责任心和协作能力强。
常用压力测试工具对比
V
V
V
V
1、Apache ab(单接口压测最方便)用法:ab –c 100 –n 100 http://www.baidu.com(目
标服务器),选项说明,-c,并发多少个,-n多少次。直接回车就可以进行压测
2、webbench:webbench的工作原理是fork出多个子进程,每个子进程都循环做web访问
测试,子进程把访问的结果通过pipe告诉父进程,父进程做最终的统计结果。
3、loadrunner:很强大的一款商业工具,性能稳定,压测结果以及细粒度大,可以自定义
脚本进行压测。因为是商业工具,而且是根据虚拟用户数决定价格(100最大的虚拟用户数
目 123000美元,1000虚拟用户30W美元左右)
4、Jmeter:免费,开源,100%纯Java开发,也是目前比较主流的一款性能测试工具。
V 总结:目前比较主流的性能工具是Loadrunner和Jmeter,工具有很多种,但是我们最好选
择比较主流社区活跃且大众化的,方便交流共同学习,说的更直白点,就是满足企业需求,
招聘都是以这两款为主(商业and开源区别?)
性能测试工具选型原则
V 成本
V 工具成本:工具的优缺点
V 学习成本:自身知识储备能力
V 通信协议:支持哪些协议,很多性能测试工具都是基于协议工作
V 生命力:社区是否活跃,使用人数
Apache JMeter的由来?
V Apache软件组织的Stefano Mazzocchi是
JMeter的创始人。他编写它起初是为了测试
Apache JServ的性能(一个已经被Apache
Tomcat工程所替代的工程)。
拓展小知识
sun公司为servlet这个类做了一个参考实现。叫Java Web Server,JWS
Apache基金会也做了一个JServ
SUN在1999年把JWS捐给了apache基金会。然后两个项目合二为一。就成为
了Tomcat。
我们用它能做什么?
V Apache JMeter 是Apache组织的开放源代码项目,
是100%纯java桌面应用程序,被设计用来测试客户
端/服务器结构的软件(例如web应用程序),FTP
服务器等等,数据库服务器(比如MySQL)等等。
Apache JMeter能做什么?
V JMeter 的特性:
a) 能够对HTTP和FTP服务器进行压力和性能测试, 也可以对任何数据库进行同样的测试
(通过JDBC)。
b) 完全的可移植性和100% 纯Java(跨平台)。
c) 完全 Swing 和轻量组件支持(预编译的JAR使用 javax.swing.*)包。
d) 完全多线程 框架允许通过多个线程并发取样和 通过单独的线程组对不同的功能同时取
样。(Jmeter中多线程即意味着多用户)
e) 精心的GUI设计允许快速操作和更精确的计时(有可视化界面可以操作)。
f) 缓存和离线分析/回放测试结果。
g) 高可扩展性:
h) 可链接的取样器允许无限制的测试能力。
i) 各种负载统计表和可链接的计时器可供选择。
j) 数据分析和可视化插件提供了很好的可扩展性以及 以及个性化。
k) 具有提供动态输入到测试的功能(比如jsr223提供的功能,包括Groovy,Javascrīpt)。
l) 支持脚本变成的取样器(在1.9.2及以上版本支持BeanShell)。