Table of contents
Divided by test objects (understanding)
Difference Between Fault Tolerance and Reliability
⑦Installation and uninstallation testing
Test by whether to view the code block
Can gray box testing replace black box testing and white box testing?
Can black box testing replace gray box testing?
Interview question: What are the common testing methods? Which method is used more often?
Divided according to development stage
Divided according to whether it is running or not
Divided by test implementation organization
The difference between alpha testing and beta testing
1. Different application scenarios
Divided by test objects (understanding)
①Interface test
Interface testing is also called UI testing. Interface testing requires reference to UI design drawings. Generally speaking, it is to verify whether the design of the software interface is reasonable.
Verify the consistency, rationality, accuracy and friendliness of the interface
Validate components of the interface, such as scroll bars, dialog boxes, and text boxes
Verify the typography and layout of the interface
Verify whether the color tone of the interface is consistent with current events
②Reliability test (usability)
Reliability formula: the time the software works normally /(the time the software works normally + the time the software fails to work normally)*100%.
The result obtained by this formula is generally 99.99% or above.
Some software tools are needed for testing
③Fault tolerance test
Fault tolerance testing means that the system can handle exceptions and the user's incorrect operations will not cause the system to crash, thus improving the system's availability.
Difference Between Fault Tolerance and Reliability
Fault tolerance refers to an indicator of abnormal operation of the project
Reliability is an indicator of the normal operation of the project
④Document testing
Document testing is usually the requirements analysis that testers need to perform during requirements review .
⑤Compatibility test
Browser compatibility:
Chrome, Firefox, edge, Safari and more
Platform compatibility (operating system):
Linux, Windows, Mac, etc.
Own compatibility:
For example, different versions of jdk need to be compatible.
Compatibility of other software:
For example, Baidu APP, whether it is compatible with other APPs, whether it supports access to other APPs, whether it supports entrances to other software, etc.
⑥Ease of use test
The software should be simple and easy to use, mainly to provide users with a better experience.
⑦Installation and uninstallation testing
How to install and uninstall software
Can the installation and uninstallation process be paused?
Are there any prompts for insufficient space during installation?
⑧Safety testing
Security aspects such as SQL injection, unauthorized access, input scripts, system vulnerabilities, data tampering, etc.
⑨Performance test
How responsive is the software? (238 rules)
Memory leaks, memory usage
cpu usage
Network and other resource bottlenecks
Memory leak testing
Artificial static method: code reading and manual search for unreclaimed memory.
Use tools to test for memory leaks
Test by whether to view the code block
black box testing
Black box testing treats the project as a "black box" and does not pay attention to the internal structure and internal characteristics. It only focuses on whether the code meets the user's needs. The description of the product specification is also called "data-driven testing".
Commonly used black box testing methods: equivalence class, boundary value, decision table, orthogonal method, scenario method, error guessing method
For specific commonly used black box testing, see this article:
(100 messages) How to design test cases and commonly used black box testing methods_The blog of the power-hungry native dog-CSDN blog https://blog.csdn.net/m0_67995737/article/details/130625865?spm=1001.2014.3001.5502 Characteristics of black box testing: tests that cover the widest range of product functions, but cannot cover all code
white box testing
White-box testing focuses on code logic and does not pay enough attention to business functions, so it is also called "logic-driven testing".
Therefore, the advantage of white-box testing is high code coverage, but the disadvantage is insufficient business function coverage.
It mainly includes six testing methods: statement coverage, decision coverage, condition coverage, decision condition coverage, condition combination coverage, and path coverage .
Gray box testing
Gray box testing is an intermediate type of test. It focuses on both the implementation of specific code and the implementation of business functions. However, gray box testing does not have the comprehensive coverage of black box testing functions, nor does white box testing focus on the details of code implementation.
Application phase of gray box testing: integration testing
Can gray box testing replace black box testing and white box testing?
Gray box testing cannot replace black box testing and white crane testing for the reasons described above in the shortcomings of gray box testing.
Can black box testing replace gray box testing?
Black box testing can replace gray box testing, but once replaced, it is necessary to design a lot of test cases, which is labor-intensive, time-consuming and costly.
Interview question: What are the common testing methods? Which method is used more often?
Common testing methods include black box testing and white box testing. The use of both needs to be combined with specific business needs and scenarios.
But generally speaking, as a tester, you need to consider using black box testing more. Of course, if you want to lock down bugs in more detail, you can also use white box testing.
Divided according to development stage
①Unit testing
Unit testing is testing the smallest unit of the system
Testing method: White box testing: Generally, the JUNIT framework needs to be used to test the smallest functional unit.
②Integration testing
After completing the unit testing, integrate each module of the project and integrate each unit module for testing.
③System test
Test the system design of the project.
④Regression testing
Regression testing is to test historical versions and functions to ensure that the functions meet the requirements. However, as there are more and more versions of the project, there will be more and more functional requirements, so automated testing is needed.
⑤Smoke test
Smoke testing is a tedious process in which all testers participate to verify whether the product has the conditions to be tested (it can avoid developers from constantly submitting bugs)
⑥Acceptance test
The purpose of acceptance testing is to verify whether the product meets the user's needs.
In fact, it is the product students/operation students who conduct the acceptance.
Divided according to whether it is running or not
static testing
Static testing refers to testing that is performed before the project is running, such as testing by looking at a piece of code.
Dynamic Testing
Dynamic testing refers to testing performed after the project is running.
Divided by test implementation organization
alpha test
Alpha testing is a test conducted in a development environment. It is usually an internal test within the company and is small in size.
beta test
Beta testing is an acceptance type of testing that is performed by end users in one or more environments. Larger in size
The difference between alpha testing and beta testing
1. Different application scenarios
Alpha testing is a test performed in the development environment, and beta testing is performed on the user's terminal.
2. Different testers
Alpha testing is generally participated by internal personnel of the company, while beta testing is generally participated by users and their users.
3. Different order
The order of alpha testing is better than beta testing. Beta testing is performed only after alpha testing is completed, and the testing cycle of beta testing is longer.
Testing regional issues
For international projects, attention should be paid to the differences in each region, which need to be treated differently and divided.