The Testing Secrets Behind NetEase Products

  • Bin Zheng |  Senior Test Manager of NetEase

    He joined NetEase Hangzhou Research Institute in 2006 and is currently the Head of Quality Assurance Department and Senior Test Manager of NetEase Mail Business Unit. Responsible for the quality assurance of NetEase Mailbox, NetEase Mailbox Master, NetEase Lightning Mail, Yixin, NetEase Yanxuan, NetEase Rich Money, NetEase POPO, NetEase CC and other products.

For NetEase products, whether they are games or other products, everyone generally hears a saying: "The products produced by NetEase must be high-quality products." It can be seen that everyone recognizes and appreciates NetEase products.

When it comes to the high-quality products produced by NetEase, such as LOFTER, NetEase Open Class, NetEase Cloud Classroom, Mailbox Master, NetEase Cloud Music, News Client, NetEase Koala, Youdao Dictionary and so on. Behind these products, what role do test engineers play and what work do they do?


1

behind the product

First of all, the birth of each product is inseparable from the incubation process. When we decide to make a product, we need to clarify what product to make for users and what the vision is. At this stage we keep coming up with ideas and directions, weed out the bad ones, and finally settle on an exciting product goal.

After the product project is approved, each team will take action.

Product managers will dig out user needs and define our product needs;
Interaction designers will consider product details, output, and high-fidelity prototypes as needed;
Visual designers will provide high-quality visual materials according to the requirements of different platforms;
Development implements these requirements little by little with lines of code, and development is the builder;
Testing is a builder and a destroyer at the same time, to verify that the development implementation is consistent with the requirements, and to have a sense of destruction, to design various abnormal and high-pressure scenarios to ensure that tens of thousands of users of the product can be normal. Use, like the space shuttle, requires designing for various extreme environments to verify its reliability.



In addition, we also have teams for user research, data analysis, operation promotion, and system operation and maintenance. It can be seen that behind a successful product are a group of hard-working men and women. For every product to be successful, the process is difficult. But we ultimately get a sense of accomplishment from product success, and so does testing.

Just mentioned the role of the testing team, what exactly does the testing do? Will it be enough to click the mouse or click here and there on the mobile phone as everyone thinks? Let's take a closer look at the role of the test team.

2
test secret

In the requirements testing phase, what is the requirement to determine the feasibility?

In NetEase, the entire project team must participate in the review and put forward various opinions and suggestions. After the requirements are confirmed, interactive visual design, development and architecture design, and testing requires analysis of test requirements, design of test cases and design of performance test scenarios, etc. After the development and design of a test version that can be output, testing will start Specific interface testing, integration testing, compatibility testing, performance testing, etc.

After the product is launched, we need to follow up on user feedback, monitor online services with the development operation and maintenance team, and promptly summarize the problems and experience in the entire testing process, improve the methods in time, and use automated methods to improve testing efficiency.
 
When many students choose a job, they have a lot of confusion about the profession of test engineer. Some people think that testing is repetitive work, boring and lacking in challenges, or does not require technology and strong ability. Many students even feel confused, irritable and have no future after working for a period of time.

In fact, I can confidently say that these views are all wrong. In the Internet industry including NetEase, a test engineer is a very interesting and challenging profession. You will be exposed to different projects, various types of tests, and will use different tools and skills. In this industry, you can also get a strong sense of satisfaction and achievement, and there will be a good future for development.


3
What is a good test?

We said before that testing requires a way of thinking about building and destroying, forward verification and reverse trial and error. This is not schizophrenia, but the way of doing things in test execution and test design. Whether the foundation of testing can be done well is also a test. The difference between an engineer and everyone else.

Just like everyone can be a product manager but not everyone can be a good product manager; in the same way everyone can be a tester, for example you can find a bug in the use of a product, but not everyone can Be a good test engineer. I often tell my testing colleagues to do the following three things: know more about development than products, know more about products than development, and be professional in testing.
First of all, it is sensitive and targeted . The same product has different implementation methods, and different implementation methods require different testing strategies and testing methods;
Secondly, it is necessary to have a deeper understanding of the requirements , and consider what scenarios and environments users will encounter when they can still use our products normally;
Comprehensive testing ideas means that functional test points should not be missed when testing requirements analysis and test case design, so that the test scenarios can be covered.



4
How does NetEase do the test?

So what kind of work experience will we be in the product testing process of NetEase?

Before our product is released, all members will spend about one to two hours to use the function of the product. There are two purposes, one of course is to solve the missed bugs before the release, and the other is to enhance the members' understanding of the product and enhance the cohesion of the team, which is a new testing method outside the regular testing process.

In addition, we will also use the method of crowd testing to mobilize more colleagues outside the project to test , such as crowdfunding, using everyone's strength to try out the product to be released. Previously, it was limited to the entire team, but public testing can expand the test population to the entire company, allowing external personnel to participate together, and we will also issue bonuses when bugs are found. The more you find, the higher the bonus.

For compatibility testing, we also have a dedicated team to provide mobile app universal compatibility testing services. This team has purchased a lot of ios and android devices, and through a combination of automated and manual testing, provides mobile app installation, startup, update, and compatibility and stability testing of specific product businesses, including compatibility with mobile H5 pages Compatibility testing can help product testing teams cover more mobile devices and reduce manpower input for compatibility testing.

In addition to the improvement of the testing process and services mentioned above, we will use and develop various tools to improve efficiency in product testing according to the characteristics and needs of each product , freeing us from manual testing, and then using The time saved does more meaningful things.

We will conduct a large number of interface automation tests to test the functions of the api interface and http interface provided by the backend. This is the practice of the concept of layered testing.

We will also use continuous integration testing tools , such as this Jenkins, to submit code, compile, package, and deploy test machines to automated excuse testing and ui automated testing to achieve automatic construction, automatic deployment, rapid launch, and rapid verification. In this configuration, we save not only the time of the test team, but also the time of the development team, which is also an attempt and practice of agile development.

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324668732&siteId=291194637