Table of contents
2. The purpose of software testing / how to do software testing well?
3. What are the methods of software testing?
4. What are the methods of writing test cases
5. What is black box testing? White box testing
6. Advantages of black box testing? Advantages of white box testing? Disadvantages?
7. You found a bug, but the development does not consider it a bug, what should you do?
8. Software testing is divided into several stages, what are the requirements of each stage
9. How to deal with bugs that cannot be reproduced
1. Front-end and back-end joint debugging
2. Prepare online test data and accounts
1. What is software testing?
Software testing is the process of using manual or automatic means to run or test a software system, the purpose of which is to verify whether it meets the needs of users
2. The purpose of software testing / how to do software testing well?
Use manual or automatic means to test the software under specified conditions, find bugs in the software program through testing, and then reduce bugs as much as possible to ensure the quality of the software
In the early stage: find as many defects as possible to generate related specifications
In the mid-term: find defects as early as possible
In later stages: try to prevent problems,
3. What are the methods of software testing?
black box testing, white box testing, gray box testing
4. What are the methods of writing test cases
scene method
equivalence class division
Boundary value
decision table
Wrong inference
5. What is black box testing? White box testing
Black box testing: also called functional testing or data-driven testing. Knowing all the functions of the product, test whether each function can be used normally
White box testing: also called structural testing or logic-driven testing, is a test for how the unit under test works internally. Mainly for the code level
6. Advantages of black box testing? Advantages of white box testing? Disadvantages?
black box:
Advantages: relatively simple, no need to understand the code and implementation inside the program. It has nothing to do with the internal implementation of the software. From the user's point of view, it is easy to know which functions the user will use and which problems they will encounter.
Cons: May miss internal issues; limited coverage; duplication of work
White box:
Advantages: Help software testers increase code coverage, improve code quality, and discover hidden problems in code
Disadvantage: There will be many different paths for the program to run, and it is impossible to test all the running paths. The test is based on the code. It can only test whether the developer is doing it right, but cannot know whether the design is correct. Some functional requirements may be missed. When the system is large, the testing overhead will be very large.
7. You found a bug, but the development does not consider it a bug, what should you do?
Retest the bug, determine the recurrence rate of the bug, confirm whether the situation is clear in the document against the requirements document, communicate with the product manager to clarify whether the bug will affect the user experience, submit detailed records of the bug, including the reproduction steps, degree of impact, screenshot information, log information, and communicate with the developer again after collecting complete information to try to resolve it
8. Software testing is divided into several stages, what are the requirements of each stage
unit testing, integration testing, system testing, acceptance testing
Unit testing : Unit testing is the testing work for the smallest unit of software design—program module or even code segment to check the correctness, 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 : System test is carried out after the integration test is passed, the purpose is to fully run the system, verify whether each subsystem can work normally and meet 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 requirements phase as the acceptance standard, and the test requires simulating the actual user's operating environment. For actual projects, it can be carried out together with customers, and for products, it is the last system test. The test content is a comprehensive test of the functional modules, especially the document test.
9. How to deal with bugs that cannot be reproduced
First of all, you need to test a few more times. If you can’t reproduce it after testing many times, first suspend the bug, and pay attention to it, and activate it if the bug is reproduced in future tests. If you haven’t found it after several versions, close it.
10. Test process
simply put:
Requirements review--make test plan (test team leader assigns tasks)--write test cases, use case review--develop and test, build test environment--execute test--test evaluation, online release
In detail
test preparation
1. Requirements preparation
1. Confirmation function
2. Scene analysis
3. Discover hidden needs
2. Test plan
1. Clarify the scope of requirements and sort out the function points
2. Test equipment and data preparation to be used in the test
3. Test schedule
3. Test cases
1. Functional test cases: write test cases; test case review; test case improvement and optimization
2. Performance test and interface test cases