Summary of experience in software testing financial projects, what are the interview questions? How to handle interface encryption and decryption?


foreword

Processing of encryption/decryption interface

Software testing interview questions: https://www.bilibili.com/video/BV1Lq4y137aR/

Goal
Know the implementation process of interface encryption and decryption in the project;
understand the code implementation of encryption and decryption;
know how Jmeter implements interface encryption and decryption testing;
know how to implement interface encryption and decryption testing based on Requests;

1. Introduction to encryption and decryption of APP/client interface
The encryption method (two)
is encrypted at the application layer in the TCP/IP four-layer model. Similar to a codebook, the current project uses this one, and you can see all the response content, but you can't understand it.

Encryption is performed between the transport layer and the application layer in the TCP/IP four-layer model, and encryption is implemented through a transport protocol, such as https. Similar to the encrypted path, the response content of the message captured by this encryption method is all garbled characters

2.
The core of the encryption and decryption interface test is to write an encryption and decryption method that matches the application server

So how to do the interface test of encryption and decryption in the company:
Find the encryption and decryption method that the developer needs (because there must be a corresponding encryption and decryption method in the project code);
skip the encryption and decryption method in the test environment (need to discuss with the development , depending on difficulty and impact);

BUG location analysis

Requirements:
Basic requirements: Locate whether the bug belongs to the front-end or the back-end
Higher requirements: The module to which the bug belongs, the code level of the bug (not required)

Value:
Find the recurrence path of the BUG, ​​improve the efficiency of developing and repairing the BUG,
​​and improve one's own logical thinking and technical capabilities

Positioning skills:
1. Logical analysis
Analyze all possibilities and check one by one
to find the shortest recurrence path
Case: Playing CF games, jumping from a high place, there is a probability that there will be no blood loss - bug
analysis Possible causes of the problem: height, weight , terrain, posture...
Test and analyze each dimension separately, fix other factors, and only change one of them to
finally determine the influencing factors that will cause bugs

2. Technical means
View the database
Capture packet analysis
View server logs

Case/interview question: Add users on the interface, but do not see the corresponding user information in the user list

Check whether there is a corresponding user record in the database.
If yes, it means that the two operations in the title, the operation of adding a user is successful, and the operation of checking the user fails. If
not, it means that the operation of adding a user is not successful

Capture packets for the failed business operations identified in the first step, observe all request and response data, and capture server logs at the same time

Look at the response code first. If there is a 4XX error in the response, there is a problem with the client request; if there is a 5XX error, there is a problem with the server (most likely a bug); if 2XX, further analysis is required

When the response is 200, check the response content:
the response is correct, but the front-end page cannot be displayed, check whether the response field matches the front-end definition field, if not, find the front-end personnel to confirm that the front-end/back-end is not well defined;

If the response is wrong, check whether the request parameters are correct
. If the request parameters are incorrect, there is a problem with the front-end code; if
the request parameter is correct, but the response is wrong, use the server log to locate the problem (probably a problem with the back-end code);

Remarks: The server log needs to be confirmed with the developer to determine its location (it can be written to a log file, or it may be printed directly in the command line window)

Test interview: Explanation of financial project testing experience (all answers should be combined with specific cases)

1. Project introduction What does the project do?
2. Who is the project for?
3. What are the main functions of the project?
4. What is the technical structure of the project?
5. What is the core business process of the project?
6. What is the testing process of the project?

  • Participate in needs review and conduct needs analysis
  • Write test plan and review
  • Write and review test points and system test cases, if there is an interface test, write and review interface test cases
  • Execute interface test cases (manual and automated execution), execute system test cases
  • Write and review test reports

7. How to test the functional modules you are responsible for? (that is, how to design test cases)

  • Test from all dimensions of function, performance, usability, compatibility...
  • During functional testing, first design test cases for the functional points in each page; for example: . . . . Which function points of the specific page are designed by which methods, and then test cases are designed for the business process; for example: . . . . . ditto
  • When performance testing, eg. . .
  • Ease of use, eg. . .
  • Compatibility: such as browser, operating system, resolution. . . . .

8. How to design interface test cases?
single port design

  • Forward (success): required parameters, all parameters
  • Reverse (failure):
    parameter error: more parameters, less parameters (low priority)
    parameter data error: data is empty, length range error, type error (priority medium)
    business data error: return error exception based on business function (reference Different error descriptions defined in the API) - (high priority) combined with the business of the project. . .

Design of Multiple Interfaces

  • Sort out the business process of the system, combined with the business of the project. . .
  • Sort out the corresponding interface of each action in the business process, and combine it with the business of the project. . .
  • Test in the order of business processes, combined with the business of the project. . .

9. What is the timing/purpose of interface testing? (Ask whether you mean manual interface testing or automated interface testing)
Manual interface testing

  • Timing: The backend is developed, but the frontend is not
  • Purpose: to find bugs as early as possible

Automated interface testing

  • Timing: During the whole process of project testing
  • Purpose: To ensure the quality of the project and avoid developing and modifying the code to introduce new problems (it feels similar to regression testing)

10. How to prepare the data in the interface automation testing process? (The data scenarios required in a project are very diverse, and all three scenarios will appear)


Manual construction: it only needs to be constructed once to construct data that can be used for a long time.
Interface construction: multiple constructions are required, and the data is relatively complex. no more than two)

11. How to use Jmeter to write interface automation scripts?
Can write interface automation scripts
Each test case corresponds to a thread group in Jmeter
Use HTTP sampler to send requests
Supplementary usage: data definition, data association of response results, response assertion...

Automatic clearing of automated data can be performed.
Configure the JDBC connection pool
and execute the SQL statement to clear the data through the JDBC Request request.

Jmeter script deployment to continuous integration

12. How to use code to write interface automation script?
First build the framework (api, script, log, report, utils, app)
to define the log initialization configuration and run the script suite.
When writing the script,
first define the API interface class
and call the API interface class in the test script

13. How to ensure the stability of the interface automation test script?
After running the script, clear the test data.
When asserting, get the actual data by connecting to the database instead of using fixed data.

14. How to test the interface when the third-party interface is involved in the project?
Through the mock technology, simulate the third-party system to receive the request and return the response

15. Impressive BUGs found during project testing
are difficult to find/locate, such as probabilistic BUGs
and technical content BUGs, such as interfaces, white and tests, BUGs found through code analysis (not easily constructed by hand)
BUG communication In the process, it was more tortuous, and finally resolved

The above is an impressive BUG idea, combined with your own project to prepare

16. Problems encountered during project testing

The following is the most complete software test engineer learning knowledge architecture system diagram in 2023 that I compiled

1. From entry to mastery of Python programming

Please add a picture description

2. Interface automation project actual combat

Please add a picture description

3. Actual Combat of Web Automation Project

Please add a picture description

4. Actual Combat of App Automation Project

Please add a picture description

5. Resume of first-tier manufacturers

Please add a picture description

6. Test and develop DevOps system

Please add a picture description

7. Commonly used automated testing tools

Please add a picture description

Eight, JMeter performance test

Please add a picture description

9. Summary (little surprise at the end)

As long as you have a goal, you must move forward step by step. Don't be afraid of difficulties, don't give up hope. As long as you work hard, you will be able to create your own future. Believe in yourself, you will succeed!

Life is a long road, and the struggle is endless. There is nothing more important than persistence. No matter you encounter setbacks or failures, don't give up your dreams and persistence. You will be successful!

Don't stop at failure, keep going. Don't let other people's eyes influence your choice, believe in yourself, and go on firmly. The process of struggle is always full of challenges and difficulties, but only by persisting can you taste the taste of success. come on!

Guess you like

Origin blog.csdn.net/shuang_waiwai/article/details/130247479