📜 ⬆️ ⬇️

4 must-have-elements of software testing

September 29, "Universarium" launched the course "Fundamentals of Software Testing . " We must pay tribute to Alexei Petrov - the author of the course, the director of quality Mail.ru. During 17 lectures, he systematically leads the listener to the idea that testing is not just (and, frankly, not at all) a reconciliation of the implemented code with the specification. This is the process that accompanies the product from the very idea of ​​its creation almost to complete disappearance and cessation of use. Say more - this is a whole philosophy, the ultimate goal of which is to create the Product of Your Dreams.

image

Today we will reveal the main points of testing, without which it is impossible to create a quality product:

1. Testing specifications.
This is a very difficult way to test. But it is he who will save the most money on the production of goods. He demands extraordinary thinking from specialists, which allows him to solve the tasks facing the tester long before the software is implemented. In some ways, you will need skills that helped you to solve problems in stereometry, or at least in geometry. It was then that spatial thinking was needed and on the basis of a dry document like “an isosceles triangle was given with a height of NN cm., Which is inscribed in a circle with a given radius”, an image appeared on the basis of which the task was solved.
')
2. Manual and or automated testing.
In this symbiosis of man and machine, a seed of truth and true quality is born. The fact that in the work of the tester a lot of routine moments is not a secret for anyone. Suppose there is a requirement in the TOR that needs to be checked: during the entire software life cycle, it is necessary to register 200 times with an account whose login begins with a Latin letter. After another 200 times check that you can register with an account that starts with a number. Such operations, sooner or later, oppress a person, make him unproductive. That is why it is better to transfer such operations to machines, and to provide more creative work to people related to specification testing, test design, programming of those very machines that will conduct testing. One can only hope that in this way we do not contribute to the development of SkyNet and the capture of human civilization by the terminators. But we will find out about this a bit later. According to new data - in 2017.

3. Processing applications from technical support.
Technical support is a horn through which a user can contact you, can report a problem, about his or her misfortune. You can chat with him. Only a well-built process of communication with the user through technical support will allow to bring the quality of the product to the level when they will be admired. It is important to understand that it is often necessary to produce products in which there are known defects, but it is not possible to correct them at the moment. In this case, properly structured work of technical support, allows you to correctly prioritize: which of the known defects need to be fixed in the first place. That is, to find out - that puts users out of balance to a greater degree.

4. Focus tests.
Conduct focus tests. Communicate with your audience in an informal way. This encourages users to come to you and help make software for them. Very often it happens that after the idea arose, moved to implementation, and then into the testing phase and then was transferred to the end user, it has already lost its significance or one of the components that was supposed to “illuminate this world with light” . In order to understand whether work with the product is going in the right direction, use communication with users through focus tests. They give the opportunity to learn - the product really helps the user or not. At this stage, you can make for yourself all sorts of discoveries. An example from the practice of Mail.ru: “We worked hard to make it easier for users to search for attached files in the mail. We made a special interface, implemented a ranking by the format of the attached file, the date it was sent and many more parameters. Conducting dozens, hundreds of tests, we are surprised to discover that the user, unlike us, searches files differently. It still, in the old manner, clogs the sender's file search string and searches for the letter among the issued letters where the attachment contains the necessary document. Understood that if it is more convenient, then you should not interfere. It is this kind of information that allows us to reshape our tests, make them more representative and check exactly what is relevant and demanded by the user, ”says Alexey.

The described procedures allow to introduce the core of a quality product. After that you can add other equally useful tools. For example, unit-tests, which enable the developer to track the results of the introduction of new code and get information about its quality, without communicating with third parties. Or code-review, which allows you to significantly simplify the code, thereby speeding up the download of content for the user.

All these tools have a positive effect both in terms of image and in terms of the financial component of the product. Keep this in mind and do not save on quality. Better save on educational courses and come to study on the free online course "Universarium" - " Fundamentals of software testing ." Record is already open!

Source: https://habr.com/ru/post/268181/


All Articles