In the introduction and application of automated testing, we understand some basic principles:
-If you select a proper tool, the most popular tool may not be suitable for you. The most suitable tool is the best. For example, robot is not necessarily the best, but its multi-machine interaction and collaboration capabilities are not available in other tools.
-Different test tools can be selected based on different features of the client, web, and server, such as web links, fast UI changes, and complex logic. The recording function of the tool is strong and stable, adapt to different platforms (Windows, Linux, Mac OS) and browsers (ie, forefox, NS ,...). The server generally does not have a UI interface, mainly for support of different protocols.
-Automated load and performance tests are easier to implement, but more difficult to implement functional tests.
-Although software testing automation (TA) has many advantages, it is only a supplement to manual testing. Ta cannot replace manual testing. Black box testing is usually used for manual testing of system function logic testing, acceptance testing, applicability testing, and physical interaction testing; unit Testing, integration testing, system load or performance, stability, and reliability testing are suitable for TA.
-The tool itself has no imagination and flexibility. Automatic Testing can only detect 15-30% of defects, while manual testing can detect 70-85% of defects. Ta tool performs function testing, the accurate meaning is a regression testing tool, because the tool cannot discover more new problems, but it can ensure the accuracy and objectivity of the tested parts.
-Identify the starting point for automated testing, generally starting from a long-term new product, and starting from a module that is relatively easy to automate and has a complicated manual testing, such as a large number of API calls and mail template processing;
-It is necessary to incorporate testing and development into the entire software development system. The system is not testable and no good tool is available. In addition, there is a large investment in the early stage of testing automation. In this way, more time is allocated in the early stage of software development, and the test execution time can be shorter. There are also different human resources allocated for reasonable resource scheduling.
-Test automation depends on the test process and test cases. Without a good test process or designing a valid test case, the test tool will be more than half the effort.
Large investment in software testing automation
But there is a problem that bothers us, that is, which of the following modes is better?
1. A dedicated ta team is responsible for automated module development and is handed over to the functional testing team after development. A new level of handover and communication is added. However, the TA team is dedicated to scipting, which is highly efficient in development and is conducive to retaining ta engineers.
2. contract some modules of the product to the TA team. Once the TA team is ready for development, there will be fewer manual tests and the TA team will drive itself. The effect should be good, but the development efficiency may be low, or the TA team feels a lot of pressure, or does not like manual testing, it is easy to force development.
Welcome to comments!