Summary of software testing job interview questions + answers in 2023, maybe this is the only thing missing from your application...


Preface

1. The difference between B/S architecture and C/S architecture

B/S only requires an operating system and a browser. It can achieve cross-platform and zero client maintenance, but it has low personalization capabilities and slow response speed.

C/S has fast response speed and strong security. It is generally used in local area networks because it requires targeted development for different operating systems and has high maintenance costs.

2. The difference between GET and POST

GET uses URL or Cookie to pass parameters. And POST puts the data in BODY.
The GET URL has a length limit, and the POST data can be very large.
POST is safer than GET because the data is not visible on the address bar.
Generally, get requests are used to obtain data, and post requests are used to send data.

3. Focus on unit testing and integration testing

Unit testing: It is the lowest level of testing activities to be carried out in the software development process. In unit testing activities, independent units of the software will be tested in isolation from other parts of the program. The testing focus is on the modules of the system. Including the correctness of the procedure, inflammation, etc.

Integration testing: also called assembly testing or joint testing, based on unit testing, all modules are assembled into a system according to the design requirements for integration testing.

System testing: It is to assemble the tested subsystems into a complete system for testing. It is an effective method to verify whether the system can indeed provide the functions specified in the system solution description. The test focuses on the operation of the entire system and other software.

4. Ending conditions (conditions for project launch)

Requirement coverage, use case execution and defect legacy rates meet quality goals;
generally speaking, requirement coverage and use case execution rates need to reach 100%;
fatal/serious defects need to be resolved on the same day, and minor/general legacy rates must not exceed 30 %;

5. When to use the scene method?

The usage scenario method is usually used in smoke tests or some software/functions with strong process (such as installation, uninstallation, etc.)

6. How to set up the test environment?

Before building the environment, the developer will give us a system release manual, and we will build it according to this manual.

For example:
My xx system is built under a Unix system. The web server uses Tomcat8, the Mysql version is 5.7, and the program is written in Java. First, we get the compiled installation package from the developer, and then use xshell (or CRT) remotely connect to the Unix system, stop the tomcat server, put the program package in the webapps directory, and then start the tomcat server.

7. If a user discovers a bug after the product is launched, what should the tester do?

The first thing to do is to reproduce the problem and feedback it to the R&D personnel so that a patch or solution can be released as soon as possible.
After the bug is resolved and there are no problems going online, we will look at the follow-up processing.
Investigate the cause and solution: What is the reason for this BUG?

This can be divided into several situations:
1) The test environment cannot be reproduced: it may be a BUG caused by the online environment or the test environment cannot be simulated.
Solution: Try to improve the testing method, simulate the testing environment as much as possible, and increase online testing.

2) Missing test:
excessive cutting of test cases: wrong estimation of priority or cutting of test cases due to too tight time limit

Solution: Re-evaluate the testing time when subsequent versions or other projects are launched, and ask experts to intervene to evaluate priorities to avoid such incidents from happening again.

Omissions during test case execution: Omissions during test case execution due to negligence on the part of the tester.

Solution: Investigate the tester's work throughout the testing process, randomly test other modules, conduct a comprehensive evaluation of the tester, and give a conclusion as to whether he missed testing because he was lazy or because he was responsible for too many modules. There are still other reasons to issue a warning to the tester, and to the relevant test supervisor, project manager, and product manager.

Incomplete test case coverage: caused by lax review of use cases; caused by changes in requirements midway; caused by some other factors

8. How to track defects

Process description:
Testers follow the test cases in sequence and track the entire life cycle of defects.

Definition of roles:
Tester: Responsible for specific test execution and tracking personnel
Test team leader: Responsible for test execution machine tracking including a review of bug tickets
Project manager: Reviews and assigns bugs to testers
Developer: Responsible for bugs assigned to individuals to resolve

Definition of status:
new, confirmed, resolved, revalidated, closed, reopened

9. How to locate bugs

1) When you find a bug, you must first check the detailed information of the bug, and make a preliminary analysis of which module and which piece of code the problem is based on the description.

2) Check the test environment, test code segments and test data that caused the bug, and eliminate program abnormalities caused by testers' misoperations

3) After confirming that the test code, test environment and data are correct, further analyze the root cause of the bug. Here you need to look at the specific test business, which can be analyzed with the help of relevant tools, such as firebug plug-ins, etc.

4) If the product or business has relevant log records, the bug can be confirmed by analyzing the logs

5) After the tester can basically confirm the cause of the bug after a series of analysis, he can directly report the bug to the development (pay attention to communication skills)

6) If the cause of the bug cannot be confirmed after analyzing all aspects, you can find the developer to locate it together (note that the bug scene should be retained or the bug scenario can be reproduced)

7) After confirming the bug, submit the bill of lading to the development for bug tracking.

The following information must be clearly described on the question sheet:
specific test time, test environment, test scenario, specific business and function of the test, test code and test data used, test execution steps, test results, bug phenomenon (preferably screenshots), Log records, expected results, bug confirmation related personnel, etc.

8) Track bugs and wait for developers to fix bugs before performing regression testing. (Pay attention to whether the bug is completely fixed, whether it affects other functions, and whether it introduces new problems)

10. Project introduction (important)

A basic introduction to the project:
The recently tested project is an e-commerce platform system with an operating model similar to websites such as Tmall and JD.com.
The project system consists of two parts: the front desk and the back desk.

The front desk is for shopping users and includes system modules such as membership, product display, shopping cart, order, payment, and user center.

The backend is for operating merchants, including product management, member management, order processing and other system modules.

Explain the modules you are responsible for testing:
In the project, I am mainly responsible for testing modules related to orders and background order processing.
Shopping Cart-----
Order Processing-----

The main process of order processing in the background of our project is:
the user pays successfully – the merchant confirms the order – shipment – ​​the user confirms that the item is correct, confirms the harvest – the order is completed – there are subsequent after-sales and evaluation related processes.

Others:
In addition to confirming the order, the merchant can also cancel the order;
if the user does not confirm the receipt, the system can set a timeout to automatically receive the goods (7 days);
refunds can also be made in case of abnormal receipt or other circumstances.

11. What classic bugs were found in the project? What causes this? (important)

When Jmeter connects to the database for stress testing (the error message cannot be created and the user's access is denied, the password is correct)

Solution: ZenTao conflicts with the mysql database port. Close mysqlzt in the service and it will be fine.

Error message in the registration information: For example, the mobile phone information column should be filled with an 11-digit valid phone number, but the prompt message is "13-digit phone number". This is caused by the developer's carelessness.

Interface bug: The passed field value is empty, but the development did not set a default value of 0, resulting in no data being received.

12. How to find bugs in software as soon as possible?

Familiarize yourself with the requirements and business of the software as soon as possible. Only by becoming familiar with the business process of the product can you quickly find some important defects in the software.

Treat yourself as a user and use the system. For example, is this how you operate the system?

Be good at doubting, don't ask for developer's ability

13. What will you do if you find a bug?

1) The project manager completes the requirements document through communication with the customer
2) The developer completes the requirements analysis document based on the requirements document, and the testers review it
3) The tester starts writing test cases based on the modified requirements analysis document
4) After the test cases are completed , testing and development need to be reviewed.
5) Testers build the environment
6) Developers submit the first version. There may be unfinished functions that need to be explained. Testers conduct tests and submit bugs to bugzilla after discovering them.

7) Develop and submit a second version, including bugfixes and added functions, for testers to test.
8) Repeat the above work. Generally, the number of bugs will be reduced after 3-4 versions and meet the shipping requirements.
9) If there are problems reported by customers, testers are required to assist in reproduction and regression testing.

The following is the most comprehensive software testing engineer learning knowledge architecture system diagram in 2023 that I compiled.

1. Python programming from entry to proficiency

Please add image description

2. Practical implementation of interface automation projects

Please add image description

3. Web automation project actual combat

Please add image description

4. Practical implementation of App automation project

Please add image description

5. Resumes of first-tier manufacturers

Please add image description

6. Test and develop DevOps system

Please add image description

7. Commonly used automated testing tools

Please add image description

8. JMeter performance test

Please add image description

9. Summary (little surprise at the end)

Struggle is the most beautiful gesture in life, and hard work is the only way to realize your dreams. No matter how bumpy the road is, you must ignite the flame of hope in your heart and write your own glorious chapter with courage and persistence.

Every effort is a seed of change, and persistence in even small improvements can create huge value. No matter how far away the goal is, as long as you take the first step, move forward bravely, believe in your own strength, and finally bloom your own glory!

Struggle is the fire that burns the soul, and never-ending pursuit is the inner guide. Take your dreams as your heading, overcome thorns and thorns, travel through mountains and rivers, and be unyielding. Every effort is one step closer to success. If you persevere, you will eventually create a glorious chapter in life!

Guess you like

Origin blog.csdn.net/m0_60054525/article/details/132318417
Recommended