Web testing requirements analysis, how to do it?

Here is just a record , used to refine the test method.

Web performance testing is not only about preparing test scripts, test scenarios, and environment preparation, it also requires a lot of work in the early stage. We need to invest a lot of energy in communication. For example, project confirmation, demand confirmation, developer communication, designer communication, etc. Generally, others will not tell you these things directly, so we need to catch people and ask them ourselves, whether it is calling, sending messages, or running to the other party, as long as we can find what we want.

Generally, the following questions need to be confirmed:

Project: Whether the project is new or old.

Requirements document: Is there a requirement document, and is there a description of the amount of data, number of people, etc. in the requirement document. There are no special performance requirements.

Historical documents: If it is an old project, there must be previous test documents. In particular, the testing tools of some projects are rather strange. If there is a performance testing plan, it will be much more convenient to test.

Designer: You need to find a designer to confirm the database design table (come here), what technology is used (such as ajax), whether caching technology is used (usually used), and is there anything that needs attention (such as calling external interface program, etc.).

Demand personnel: Need to find demand personnel to confirm what the actual environment looks like, including the on-site environment ( operating system , database, middleware, network bandwidth, server configuration), the number of users, and the number of online users. Know what the whole system is supposed to do. When performing performance testing, you also need to understand the business in order to better analyze the requirements.

Based on the above content, the preliminary problem confirmation is completed. Then the first step of performance testing, whether the project has measurability can be analyzed.

project testability

For lead assignment projects, testability verification is the first step. Because designers and test managers may not be able to correctly evaluate performance tests. In some projects, the designer feels that there is a bottleneck in a certain module and needs to be suppressed concurrently (out of the psychology that more tests are better than no tests). Then, when the test manager is found, the overall performance test is required. So when confirming the problem with the designer, the designer will definitely tell in detail which module needs to focus on testing.

The above is an example, and the following describes common unexpected items.

1. Projects with too few users (less than 10 people), such projects can be found if there are problems during functional testing , and there is no need to apply for performance testing.

2. If there are many users but few online users (such as forums), the company’s forums may be used by all employees, and the company does not have a mandatory requirement to go to the forums, so performance testing may not be required.

3. BI project: The BI project basically does not need to test the performance of the front page, because the performance bottleneck is mainly in the database, and SQL can be directly optimized.

4. Statistical query: The statistical query function is generally used by leaders. Generally, only one leader is using a system, so performance is not involved.

5. Interface part: Sometimes the project will use some external interfaces. These interfaces need to be tested concurrently, but the page does not need to be done.

The above may not be in line with the actual situation, just for reference. Performance testing is actually concurrency testing, so the main concern is the number of users in a certain period of time, so this can be used as a reference when judging testability.

After analyzing the testability of the project, it is determined that the project is indeed worthy of testing. The next step is to conduct in-depth testing on the project content.

Data volume analysis

If it is an old project, it is easy to handle. Check how many pieces of data are stored in the main table, how many years it has been used, and how many pieces of data are there every year, and a beautiful analysis will be produced. For example, 50,000 pieces of data in the first year increase by 10% every year, totaling 500,000 pieces of data, etc. Then in the next 3 or 5 years, about xxxx pieces of data will need to be produced.

If it is a new project, it will be miserable, because there is no reference, so what should I do? This is how I think about it. The first reference comes from the demander, and ask him about the amount of data. Because the current e-commerce generally converts paper into electronics, if possible, the demander can confirm the amount of data with the business person. Another way is to add data until it is supported. What is support? If the page is opened slowly, the query speed will be slow. Then start to optimize sql, at least to ensure that there is no room for optimization in sql itself, and then the data volume analysis is here. (Premise: This has a premise, you have to have enough time, if you don’t have time, it’s all nonsense)

User Analysis

I think this part is quite tricky, what is the analysis of the number of users? Is it possible to analyze after confirming the number of users? There is no reference value at all. (Complaint) I read various user analysis ppts by senior employees at work, but they have no reference value at all. why? No matter how I analyze it, I think it is wrong. Can it correspond to the actual scene? . It's better to ignore everything and start pressing 200 absolute concurrency until you die. At least it can be found that those modules are unstable under the strong stress destructive test.

After complaining, start analyzing

The analysis of the number of users is based on good monitoring conditions. On the premise of ensuring that the overall framework design is good and the database design is perfect, it goes online directly. Only after the user's usage, online status, and number of page visits are obtained through monitoring can the analysis be based and convincing. This is mainly for the scene design of testers. If you have convincing data and then directly act on the scene, it is an effective test.

The monitoring content needs to include

1. Monitoring of the number of users (how many people log in to the system in total)

2. Monitoring the number of online users within a certain period of time (time can be adjusted)

3. The number of page visits, and the number of visits within a certain period of time

4. Changes in server parameters, database parameters, and JVM parameters (all units use java)

Finally, I would like to thank everyone who has read my article carefully. Reciprocity is always necessary. Although it is not a very valuable thing, you can take it away if you need it:

These materials should be the most comprehensive and complete preparation warehouse for [software testing] friends. This warehouse has also accompanied tens of thousands of test engineers through the most difficult journey, and I hope it can help you! Partners can click the small card below to receive 

Guess you like

Origin blog.csdn.net/kk_lzvvkpj/article/details/132041696