8 years of functional testing veteran told you that many people have never heard of internal news

Most test engineers have a clear understanding of how functional testing can create value for the enterprise and have made a lot of attempts and practices. Usually, functional testing takes up most of the tester's work day. However, besides performing functional tests, there are other ways to add more value to the product.

As a tester, you can help the software team to iterate faster while ensuring the quality of the software through the strict CI/CD pipeline of the application. In addition to functional testing, testers can also add value to network products through the following methods. Now let Yifei talk to you.

1. Stakeholders

Members of different parts of each project have their own different needs and ideas for the project. But when the user is the end user of the product, is the stakeholder's opinion the most important? Eliminating personal prejudice and thinking habits from the stakeholder's standpoint can greatly improve the testing process and enhance the robustness of the application or website. List the people who are interested in the delivery, record the expectations of the stakeholders, and make appropriate changes according to the attitudes of the stakeholders and designate relevant specifications to prevent deviations in the direction, to avoid falling into the situation shown in the following figure:

Insert picture description hereTherefore, in addition to providing functional tests, test engineers also need to effectively communicate with stakeholders and grasp the situation in order to keep abreast of the progress. When testers encounter a BUG, ​​they usually report the BUG and track the progress of the BUG resolution process. However, to add value, the content of the report also needs to be the impact on stakeholders. In addition, it is also necessary to check how the prepared test report considers the overall situation more instead of focusing on individual functions, so that decision makers can have a more comprehensive understanding of the past and present of the software in order to make more appropriate decisions.

A good way to solve this problem is to adapt to the left shift test. The shift left test refers to testing as much as possible even before product preparation. You can sit with stakeholders to understand their real needs and the psychological motivations and expectations underlying these needs, so that you can write test cases that are more in line with business needs to avoid missed and over-tested.

2. Transition to QAOps

QAOps refers to maintaining the software quality of the product through good coordination with the DevOps team. The goal is to provide robust applications and software services with faster CI/CD processes. QAOps is committed to cooperating with development and operation teams and QA departments to execute scalable test automation use cases in a parallel manner, in order to better achieve continuous testing in DevOps, better and faster software update iterations.
Listen to user feedback

We all know that no matter how good the entire team feels about the product, the user's opinion is the most important. It is even more important to understand the user's feedback on the product and the practicality and ease of use than the realization of the function. In some scenarios, specific functions fully meet the expectations of demanders and testers, but will bring additional burdens and difficulties to users.

Testers should report risks that may confuse users. Besides the customer support team, who else can better understand what users think? After all, they are people who are in direct contact with users. Use customer feedback as the most valuable data and play a huge role in the software team.

3. Understand user stories

In an agile development framework, testers should learn more about user stories in order to evaluate the necessary work in the release cycle. It is a description of the functions on the application from the perspective of the end user. It describes the classification and attributes of users, their needs and wants, and why they want specific features. The main purpose of user stories is to determine the value that the project brings to users. Product owners and testers understand the user's situation and determine the priority of tasks based on requirements.

Understanding user stories helps to develop acceptance criteria and test plans that cover more usage scenarios. If the content of the story is too large, it must be broken down into different modules, or even broken down according to different user categories. Using the test perspective to evaluate user stories can provide a clear understanding of the time spent on each node. There are many online collaboration tools on the market that can help managers keep the entire team on a dashboard where they can assign tasks and follow up on the team’s progress.

Four. Explore new testing tools

There are many signs that traditional manual function testers are threatened by the more frequently used automated testing tools in the industry. Some people try to resist this change, feeling that their certain skills or advantages can offset the uncertainty and threats brought about by these technologies. Unfortunately, once we understand how to use tools to improve testing efficiency, most people will realize that automation is a boon. As a tester, you should at least have a basic knowledge of test automation tools and related opportunities in the field.

Using automated testing tools, testers can keep backups of user operation records and use logs at appropriate times. Other uses include detecting different patterns in logs, simulating user behavior, copying production data, etc. As an explorer in the test team, you may need to show others how to easily use tools to solve problems.

For example, if we consider manual cross-browser testing to verify the compatibility of a website, we all know that such testing is very time-consuming and laborious. If you don't understand automated testing or have difficulty using programming languages, almost no one wants to use Selenium to improve work efficiency. As a manual tester, when you first understand test automation, you may feel hesitant and unsafe about Selenium automated testing, but once you master these skills, you will find that the delivery speed of the test cycle will increase significantly.

V. Code review

Don't spend all your time on functional testing. Testers need to be more vigilant about code changes, and code reviews provide a good opportunity. In each release cycle, there needs to be a period of time for the development team to sit and review the code changes needed to meet the release requirements. For more in-depth quality checks, test engineers need to actively participate in the code review process and understand the changes that may occur in the application. Not only should testers participate, but they should also make their own contributions to these changes.

As a functional tester, I conduct interactive verification with the application every day. Every day, multiple test scenarios need to be executed, problems are recorded, and defects are returned. Although code review may be more difficult for you, you can also make some valuable suggestions from a practical perspective.

6. User experience

Ignoring user experience is one of the common problems encountered in software companies eager to release applications. The eagerness to release functional components or products sometimes takes precedence over the correctness and stability of functional components or products. Before the product is released, an in-depth inspection must be carried out. If conditions permit, these errors can be resolved through Beta testing. Take the necessary means to collect information, business indicators and a wide range of opinions to evaluate the quality of the product from the user's perspective. Record evidence retention (to prevent back-ups) and make suggestions to promote improvements.

If it is a super fast release, it is likely to start an inconsistent endless loop. Generally speaking, the participation of multiple developers and the outsourcing of part of the development task to different teams will lead to more instability risks. User touch points, icons, operations, text, functions, performance, and key processes are some important elements of quality inspection.

Seven. Strictly observe Deadlines

Many testers are more distressed that they have performed a lot of repetitive work and a lot of time wasted in communication, so that the entire process will become chaotic and cause delays. Some testers jokingly call bricks. But in fact, the final point of any project planning is the time node, and the deadline must be strictly adhered to. The ultimate goal must be to save time by avoiding these problems. At the same time maintaining the speed and quality of work, sounds like a big pit. But if the internal and cross-departmental communication is done well, the two will be unified to a certain extent, which will reduce a lot of unnecessary changes and reduce the waste of time for testing.

Writing effective test cases and detailed test reports is another way to execute tasks quickly. The two words used in this sentence, detailed and fast, may sound contradictory, but a detailed report requires a one-time effort. Using the right tools and maintaining good usage habits, you can quickly access and view necessary log content, user data, and error messages.

8. Resolve BUG

Many testers think that their work is sometimes very boring and it seems meaningless. If no BUG is found, it will make them feel unable to go online with peace of mind. After a while, running test scripts like a tool man may become a bit tedious. Execute a test case, write a test report, mark the BUG to the developer, and verify that the fix sounds simple, and to some extent it is.

However, if you want to improve your value and status in this work chain, you can't just treat yourself as a person who prompts bugs. What should you do? Then become a bug fixer.

One of the most common misunderstandings: Testers are cycling between discovering, reporting, and verifying bugs. In fact, the work of the tester will not end because of the reporting of BUG. If the tester narrows the search range to find the reason to avoid finding the needle in a haystack, it is one step closer to solving the BUG. For example, in addition to pointing out BUGs, test engineers can also provide developers with an easier way to fix them. In this way, testers can collaborate with developers and help the team save time, improve quality and efficiency. Looking at the overall situation, testers who can solve BUG can become a scarce species in the industry! It will also be more popular in the job market.

9. Learn Data Science

With a lot of raw data, it is important to choose the most relevant information and use it skillfully. Here, we are talking about data science (commonly known as big data), which is mining and storing massive information pools in data warehouses. Even with progressive delivery and deployment, everything cannot be tested, even in the best test environment!

You can follow my WeChat public account: Program Yuanyifei, there are many learning resources to share with you.

In terms of production use, with the help of big data-related technologies, testers can obtain detailed information. But as a tester, you need to learn how to make the most of all data. Data science can help testers focus on more effective testing. In turn, this will help the entire organization provide better delivery quality.

10. Active competition

In today's fast-paced technological world, companies only need a flash of effort to differentiate their competitors. With the development of the Internet industry and the involution of the industry, competition among enterprises will become increasingly fierce. The most common reason for the hellish vulnerabilities in the company's products is the testers.

In the software industry where agility is popular, testers also need to screen test business conditions and other risks to compare the advantages and disadvantages of competitors' products with their own products. In addition to functional testing, other standards should be considered, including usability testing, security testing, performance testing, and stability testing.

Eleven. Summary

Although functional testing is indeed of irreplaceable importance, it does not mean that testers can focus on it for a long time! Most testers worry about unknown changes and lack coding skills. The reality is that besides functional testing, there are other ways to add value to the organization.

Testing is to ensure that the product is irreplaceable before it reaches the end user. In some organizations, the contributions of testers are often overlooked. Many testers want to know when they can sit in a meeting room with DevOps members (even if the team is a DevOps member) to discuss products and technical solutions. QAOps will focus on continuous testing in DevOps, so as to change this status quo as much as possible.

Therefore, as a tester, if you want to know your contribution to the service or application, you can first examine the value you add to the product. Even if the decision-making power belongs to the leader and project manager, the role of the tester cannot be ignored. Testers can lay the foundation for other members to make the right decisions, thereby helping the team to reach its full potential.

Here I recommend a software testing exchange group I created by myself, QQ: 642830685. The group will share software testing resources, test interview questions and test industry information from time to time. Friends can exchange technology together in the group.

Guess you like

Origin blog.csdn.net/weixin_53519100/article/details/112899484