当前位置:网站首页>The first performance test practice, there are "100 million" a little nervous
The first performance test practice, there are "100 million" a little nervous
2022-08-05 03:59:00 【Pit player】
Recently, a fan did a performance test and kept asking me questions. He felt that he didn't even know the basic concepts, so he started to work vigorously. If there is a problem, he expects me to solve it by hand.
"Sharpen the knife without accidentally chopping wood", we have figured out the skills of performance testing, and the test will be much smoother.
Confirm requirements
Determine performance requirements and performance testing plans, determine the scope of performance testing (which scenarios are covered), performance testing strategies, the number of concurrent users, and pressure methods.
Assignment of time, personnel, and tasks. Generally, time for performance testing is reserved in the overall test plan.The performance test plan is the core content before the performance test is carried out, and it determines the index standard of how the performance test is carried out.
It mainly includes performance requirement research, performance testing scope, performance testing strategy, number of concurrent users and pressure methods, performance testing plan, use cases, etc.The most important part of the performance test plan is to calculate the number of concurrent users.
There is a core content in performance testing that cannot be avoided when talking about performance testing, which is the calculation of the number of concurrent users.At present, the evaluation strategy for a large number of concurrent users used in performance testing is the 80-20 rule.
By evaluating the system peak period and peak period with the project team (including customers and products), get the number of users in the peak period.
Assume that the peak period of this e-commerce system is 10:00 am on Double Eleven. The number of users during the peak period (for seckill/group purchase activities) is 10W, and the peak period is 15 minutes.Then we can calculate the number of concurrent users through the 20-80 rule, that is, 80% of users will complete the transaction in 20% of the time, and the calculation result is: (10W80%)/(15 minutes 60 seconds 20%)=80000 people/180 seconds = 444.44 people.
Because the company's products are not only to meet the current performance requirements, but also to meet the performance requirements of the next 3 years, and the company's business is growing (no growth will be killed), and it is expected to grow by 20% (leader saidAfter 3 years, the number of concurrent users is: 444.44 * 1.2 * 1.2 * 1.2 = 768, then the number of concurrent users per second is 768.
It can be seen from the above that the number of threads we design in the thread group is 768, the Ramp-up value is 1, and the duration is 10 minutes (common standard).
Script recording
Record the performance test script and enhance the script to make the performance test script as close as possible to the actual situation of the performance test (parameterization, association, timer, rendezvous, assertion).
Parameterized
- csv data file settings
- User variables and user parameters
- Function Helper
Association
Extraction of previous response data: JMeter creates a regular expression extractor by adding a post-processor to the previous request. The regular expression extractor contains the reference name, that is, the name of the parameter, which can be filled in arbitrarily.
The regular expression should be filled in according to the response. The response can be obtained in the view result tree. In the view result tree, use the RegExpTester mode to view the response to obtain the data to be associated and the left and right boundaries. Use (.*?) instead.The template is generally 111, and the matching number is generally followed by 1.
Association of request data: Replace the request data that needs to be associated with the reference name of the ${} regular expression, that is, the parameter.
Assertions
There are four main types of operations to respond to assertions:
- Contain: Expected results should be wrapped in actual results
- Match: use regular expressions to match
- Equals: exact equality (rarely used)
- Substring: Same as contains, but cannot be matched using regular expressions
Run
Run performance scenarios, collect performance test results (aggregated reports, active threads per second, transaction response time per second, average transactions per second, point records per second, throughput rate), and analyze performance bottlenecks (through chart analysis).
Issue performance test report
Process description, chart and text description, defect analysis.
Don't fight alone to learn technology, it is best to be able to warm up in a group. Here you are invited to join our software testing learning exchange group: [769146372], remark "Join the group", everyone can discuss and exchange software testing together, learn togetherIn all aspects of software testing such as software testing technology, interviews, etc., there will be free live classes to gain more testing skills. Let's advance Python automated testing/test development together and move towards a high salary.
Friends who like software testing, if my blog is helpful to you, if you like my blog content, please "Like", "Comment" and "Favorite" with one click!
Good article recommendation
- In the past few years, I have been to Ali and small companies to test for young peopleA piece of advice for members...
- The road of testing and development, what I have learned from testing in a large factory for four years
- Industry insiders tell the truth: I will only test those that have no future, I panic...
- Why do software testing have to learn automation?Talk about the value of automated testing in my eyes
- Teach you how to write an eye-catching software testing resume, but you can’t receive itI lose the interview invitation
- In 2022, is it still suitable to switch to software testing in the current environment?
边栏推荐
- 日志导致线程Block的这些坑,你不得不防
- [BSidesCF 2019]Kookie
- 数据库设计的酸(ACID)碱(BASE)原则
- UE4 第一人称角色模板 添加蹲伏功能
- Mathematics - Properties of Summation Symbols
- Some conventional routines of program development (1)
- 4T硬盘剩余很多提示“No space left on device“磁盘空间不足
- leetcode-每日一题1403. 非递增顺序的最小子序列(贪心)
- Developing Hololens encountered The type or namespace name 'HandMeshVertex' could not be found..
- [CISCN2019 华东南赛区]Web11
猜你喜欢

Acid (ACID) Base (BASE) Principles for Database Design

Growth-based checkerboard corner detection method

UE4 第一人称角色模板 添加蹲伏功能

Initial solution of the structure

10 years of testing experience, worthless in the face of the biological age of 35

Mysql的redo log详解

Shell script: for loop and the while loop

Kubernetes 网络入门

leetcode-每日一题1403. 非递增顺序的最小子序列(贪心)
![[BSidesCF 2019]Kookie](/img/29/19e7c244feb86b37ab32a53aa11f25.png)
[BSidesCF 2019]Kookie
随机推荐
Open-Falcon of operation and maintenance monitoring system
将故事写成我们
冰蝎V4.0攻击来袭,安全狗产品可全面检测
SkiaSharp 之 WPF 自绘 粒子花园(案例版)
【树莓派】树莓派调光
You may use special comments to disable some warnings. 报错解决的三种方式
程序开发的一些常规套路(一)
The sword refers to Offer--find the repeated numbers in the array (three solutions)
public static
List asList(T... a) What is the prototype? UI自动化测试 App的WebView页面中,当搜索栏无搜索按钮时处理方法
【背包九讲——01背包问题】
[Software testing] unittest framework for automated testing
银行数据采集,数据补录与指标管理3大问题如何解决?
bytebuffer put flip compact clear 方法演示
[论文笔记] MapReduce: Simplified Data Processing on Large Clusters
DEJA_VU3D - Cesium功能集 之 057-百度地图纠偏
2022软件测试工程师最全面试题
DEJA_VU3D - Cesium功能集 之 056-智图Arcgis地图纠偏
YYGH-13-Customer Service Center
905. Interval selection