Is the end of the universe a bank? Let’s talk about software testing in a bank

 

I switched from a testing manager of a software company where I had worked for 5 years to do software testing in ** Bank . In just 2 months, I gained a preliminary understanding of bank testing. I summarized and recorded it to deepen my personal understanding and also shared it with others. Everyone.

As everyone's financial advisor, banks are very sensitive to money. Frequent or even occasional software failures will undermine customers' confidence. If there is a hacker attack and personal property is threatened, the bank will inevitably suffer losses. Therefore, banks have very high requirements for software quality, which is also a major feature of bank software testing. Next, let’s talk about bank software testing from multiple perspectives.

business and technical aspects

 

Since a lot of the content may involve bank trade secrets, I will briefly talk about it here.

The bank mainly uses IBM 's server technology. I have never been exposed to DB2. Being accustomed to using Oracle , it took me a long time to adapt to it before I accepted DB2, which has no front-end graphical interface. But the principle of the database is the same. As long as the path is clear, the query and filtering of the required data can also be completed. So when you encounter Db2, you can calm down and study the prompts on its interface, touch every function, and slowly become familiar with it.

The bank's system is quite complicated, and the knowledge I have about banking related business is limited to personal deposits and withdrawals, and online banking payments . The content I tested is a very large business system. Most of the business cannot be seen directly and can only be understood by myself. For example, when I want to test a certain business, I find that what I am operating is not the user interface at all, but the interface data submission interface provided by the development. There are many situations like this in banks, so we use a lot of simulators . But for these complex software tests where the user interface cannot be seen, I personally have a very good method, which is to sort out the business processes and data processes, start from here, and slowly expand my business knowledge through test cases. Summary The functional points that need to be covered by each type of business process, and finally all the scenarios and checkpoints that need to be covered by this business process are sorted out.


 

Also very helpful is the technical documentation. Whenever I have time, I read relevant design documents, including business requirements, overall architecture design , database design, test plans, test requirements, summary documents compiled by experts, etc. (There are many test cases, and the projects we test are Tens of thousands, so no recommendations). Through these contents, my knowledge will be greatly expanded. At the same time, I can ask experts for advice when I don’t understand. In this way, a network of interpersonal relationships has also been established. Coupled with frequent questions, everyone's recognition of me has also increased. I think it's also a way to promote yourself. On the one hand, I gained knowledge, and on the other hand, I established a very good relationship with everyone. Kill two birds with one stone!

Process and people

Second, talk about management processes and people. The bank where I work divides software testing into two parts, ST testing and UAT testing. I belong to ST functional testing , so this article focuses on this. ST's internal management process is based on a very traditional test management method, formulating a test plan-->analyzing test requirements-->writing test cases-->executing tests ( including executing test cases and bug analysis)-->summarizing and writing tests Report. The entire process is reviewed and checked by senior testers, and it is required to pass the review. The test execution is divided into multiple rounds. Generally, there are two rounds of ST test and two rounds of UAT test. After each round is completed, a cross test will be performed. There is a dedicated person in charge of the test environment. During the test process, the development team will frequently fix problems and push versions to the test environment (the term here seems to be called rewinding). Test executors generally only verify after bug fixes, and do not pay much attention to the version of the test environment at other times.

The test management is divided into two lines. Taking our current project as an example, there are more than 50 testers. A big team leader A is responsible for personnel management and manages all testers, including personnel coordination and performance tracking. A person B, who is responsible for technical management, is responsible for formulating test plans, organizing and analyzing test requirements and designing test cases. In addition, under A and B, there are multiple groups. There is a test design group a, and five test execution groups b, c, d, e, and f. Each of these six groups has multiple personnel, and each group has Have a group leader. The team leaders of groups b, c, d, e, and f are responsible for collecting problems that the team members cannot judge every day and helping to solve them. For those that cannot be solved within the group, they must seek help from other experts or developers. I am the test executive o(∩_∩)o of a certain execution group. Manager A requires the executors of the test execution team to execute no less than *0 use cases every day. The first news in the group every day is A’s statistics and published test execution volume per person per day . The daily pursuit of test executives is to complete these tasks.

 

Occasionally there is training. I participated in it twice, once for system architecture training and once for a certain part of business training. I gained a lot, at least I got to know the relevant people, and I could ask them for advice when I encountered corresponding problems. Of course, I also encountered unfair treatment. For example, when I asked for the design document of the system architecture, I was told that it was internal information and it was not convenient to send it to me. That is to say, this is internal information and cannot be given to you, a non-internal person〒_〒.

In short, compared with my previous work, which pursued speed and low cost, acceptance was the "king". What the bank project pursues is stable functions, reliable performance, and high security, ultimately achieving customer trust and ensuring that the bank and personal property are completely correct. Then the entire testing process is interlocking, each process is taken very seriously, and every business process affected is covered as comprehensively and logically as possible. From this perspective, we testers should understand more about the entire testing process, improve their testing level, and make continuous progress, so that we can truly achieve success in bank testing.

 

Bank test interview questions

1. How to test online bank transfer? Design a test case.

2. What is the process of testing work? What are the defect statuses? How many methods are there to design test cases?

3. What are the classic BUGs found in the project?

4. How to test the automatic transfer of time deposits upon maturity?

5. What should you do after you find a bug?

6. If a BUG is discovered, it has nothing to do with the development itself. It involves concepts and requirements. How to solve it?

7. How do you classify the BUG levels for functional testing?

8. When executing someone else's use case, what should you do if you find an error in the use case?

9. Have you done the smoke side? What is smoke testing (theory)?

10. How long have you been working on your project and how many use cases have you written in total? How many people are involved in the project?

11. If you are asked to test a 6-month p2p loan product, how should you design the case and describe the test points?

12. Is your P2P online? Can I check it? How long did the project take and how long is it expected to be completed?

13. How do you measure real-name authentication? What platform do you retrieve the data from?

14. Does registration require real-name authentication?

15. Do you also test the backend management of P2P? Where is the information retrieved for personal Zhima Credit points?

16. If you want to test the background deletion of users , that is, a delete button behind the user name, what test cases can be written?

17. If JD.com had a shopping page for you, how would you test it? What main functions would you test?

18. How many rounds do you usually do for P2P function testing?

19. Every time you have a meeting to discuss, do more than a dozen developers go to the meeting?

20. Are you familiar with databases? Do you usually use the database a lot?

21. Do you usually use the database a lot?

22. 1. What command is used to view files and processes in Linux?

23. Who provided the test environment for your testing? 1How to set up a test environment in Linux?

24. What should you do if your leader assigns you too many tasks and overestimates your abilities?

25. What should you do if there is a problem at work due to your mistake?

26. You are given a module test . How can you complete it efficiently in only one week?

27. If you are given an app testing project that has no requirements, how should you test it?

28. If you have a disagreement with the developer, how do you deal with it?

29. If your team leader writes the wrong use case, but he thinks it is right, how do you deal with it?

30. You are responsible for both functionality and performance. How do you do that?

31. The language used in our company’s automated testing is Java. I’ll tell you in advance. How can I do it without watermark?

32. How were previous projects managed?

33. How many use cases did previous projects need to execute every day?

34. When you do regression testing, do you do everything?

35. How do you ensure use case coverage? Make sure there are no duplicates?

36. How do you evaluate your cases?

37. What is a view?

38. Database search for two tables

39. I have worked very hard but still failed to complete the tasks assigned by my superiors. What should I do?

Friends who need answers to interview questions can follow the public account "Programmer Tiger Balm" to get them for free.

Guess you like

Origin blog.csdn.net/crhnb/article/details/131710585