当前位置:网站首页>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?
边栏推荐
- DEJA_VU3D - Cesium功能集 之 058-高德地图纠偏
- public static
List asList(T... a) What is the prototype? - Solana NFT开发指南
- bytebuffer 内部结构
- The sword refers to Offer--find the repeated numbers in the array (three solutions)
- token、jwt、oauth2、session解析
- Walter talked little knowledge | "remote passthrough" that something
- Index Mysql in order to optimize paper 02 】 【 10 kinds of circumstances and the principle of failure
- Detailed and comprehensive postman interface testing practical tutorial
- How do newcomers get started and learn software testing?
猜你喜欢
随机推荐
Android interview question - how to write with his hands a non-blocking thread safe queue ConcurrentLinkedQueue?
A 35-year-old software testing engineer with a monthly salary of less than 2W, resigns and is afraid of not finding a job, what should he do?
重载运算符
2022.8.4-----leetcode.1403
[CISCN2019 South China Division]Web11
事件解析树Drain3使用方法和解释
Getting Started with Kubernetes Networking
bytebuffer internal structure
This year's Qixi Festival, "love vegetables" are more loving than gifts
[BSidesCF 2019]Kookie
Use CH341A to program external Flash (W25Q16JV)
bytebuffer 使用demo
[8.1] Code Source - [The Second Largest Number Sum] [Stone Game III] [Balanced Binary Tree]
【背包九讲——01背包问题】
[极客大挑战 2019]FinalSQL
Defect detection (image processing part)
The most comprehensive exam questions for software testing engineers in 2022
DNS被劫持如何处理?
DEJA_VU3D - Cesium功能集 之 056-智图Arcgis地图纠偏
BI业务分析思维:现金流量风控分析(二)信用、流动和投资风险