What are the testing strategies and requirements for each stage of software testing?

Corresponding to the development process, the testing process will go through four main stages: unit testing, integration testing, system testing, and acceptance testing:

  • Unit testing: Unit testing is the smallest unit of software design-program modules and even code segments for correctness testing, usually performed by developers.
  • Integration test: Integration test is to assemble the modules according to the design requirements for testing. The main purpose is to find problems related to the interface. Since the product development team must conduct joint debugging before the product is submitted to the testing department, integration testing is done by developers in most enterprises.
  • System test: The system test is carried out after the integration test is passed, the purpose is to fully operate the system, verify whether each subsystem can work normally and complete the design requirements. It is mainly carried out by the testing department. It is the largest and most important test in the testing department and has a significant impact on the quality of the product.
  • Acceptance test: The acceptance test takes the "Requirement Specification" in the demand phase as the acceptance standard, and the test requires to simulate the operating environment of the actual user. For the actual project, it can be carried out with the customer. For the product, it is the last system test. The test content is a comprehensive test of the functional module, especially the document test.

Unit test test strategy:

Top-down unit testing strategy: much higher than the cost of isolated unit testing, it is not a good choice for unit testing.

Bottom-up unit test strategy: A more reasonable unit test strategy, but the test cycle is longer.

Isolated unit testing strategy: the best unit testing strategy.

Test strategy for integration test:

Big Bang integration: suitable for a maintenance project or a small system under test

Top-down integration: It is relatively clear and stable for product control structure; high-level interface changes are small; low-level interface is undefined or may be frequently modified; production control components have greater technical risks and need to be verified as soon as possible; hope as soon as possible Can see the system function behavior of the product.

Bottom-up integration: It is more stable to adapt to the underlying interface; the high-level interface changes more frequently; the underlying components are completed earlier.

Progress-based integration
Advantages: It has a high degree of parallelism; it can effectively shorten the development schedule of the project.
Disadvantages: the pile and driver workload is large; some interface tests are not sufficient; some tests are repeated and wasteful.

Test strategy for system testing:

Data and database integrity testing; functional testing; user interface testing; performance evaluation; load testing; strength testing; capacity testing; security and access control testing; failover and recovery testing; configuration testing; installation testing; encryption testing; usability testing ; Version verification test; document test

Recommend good articles:

10 years of software testing engineers' perceptions-to friends who are still in confusion

What kind of person is suitable for software testing?

Knowledge to understand python automated testing(3)

Which is more suitable for automated testing, Python or Java?

The daily work of software testers

Play with Python+Selenium automated testing in 10 minutes, and teach you a quick start!

Finally: Welcome to follow the editor to receive a summary of the core knowledge of Python automated test engineers with a 300-page pdf document! Software testing technology exchange group: (313782132) The content of these materials are all the knowledge points that the interviewer must ask during the interview. The chapter includes many knowledge points, including basic knowledge, Linux essentials, Shell, Internet program principles, Mysql Database, package capture tool topics, interface testing tools, advanced testing-Python programming, Web automation testing, APP automation testing, interface automation testing, advanced continuous integration testing, testing architecture development testing framework, performance testing, security testing, etc.

Guess you like

Origin blog.csdn.net/weixin_50271247/article/details/108491811