Automated testing must have the ability to write test scripts and develop test tools independently, so automation testers need to have strong programming skills to develop test scripts as they like.
The automated test is divided into 3 levels, 1, the bottom unit test (proceeds 70%) 2, the middle tier interface test (revenue 20%) 3, the top level is the UI test (revenue 10%). Unit tests, which are based on class and method testing, contain less code, are prone to locating problems in testing, and perform faster, which is convenient for analyzing problems and solving problems, so it is suitable for large-scale regression testing. The second layer is the interface test, the interface test is to make some of the overall function of a package, and then provide services externally, it is not purely based on several classes or methods of testing, more for the function of the interface to test. Usually it encapsulates some of the larger functions of the interface, once the interface to provide services are rarely made changes or changes, generally only add or remove some interfaces, so the interface layer generally does not vary greatly, is very suitable for automated testing.
Automated testing is suitable for infrequently changing features, and the UI layer is the easiest to change, so automating is the most troublesome and difficult.
Unit tests can also be defined as white-box testing, but unit tests are not necessarily all white-box tests, but may also increase the design perspective of some black-box tests, most of which are based on code-logic tests, typically done by developers, and the intermediate interface layer is tested based on the functionality of the interface implementation, typically done by testers, Interface testing is more appropriate for automation, and the UI layer's automated testing requires a good testing framework that is broadly divided into the following categories: Distributed design, behavioral test-driven framework, keyword-driven, data-driven framework, hybrid framework (i.e. support for keyword drivers and data-driven support).
The most current tests are interface testing and server-side testing, interface testing mainly test input and output, server-side testing is more concerned with the implementation of some of the details of the algorithm, branches and so on.
Functional test to automated testing requires strong programming skills (10,000 lines of code), understanding of technology, test framework and development architecture, and the need to slowly accumulate knowledge of other areas, including algorithms, databases, Linux, and operating systems.
How to do automated testing