PlatON Tech-Column | PlatON Automatic Testing (2)
Automatic testing generally refers to the test method of replacing manual testing with programs or tools. Compared with manual testing, automatic testing plays a great role in ensuring product quality and shortening test time with higher accuracy and better reusability. Here, the idea and the technical practice of PlatON’s automatic testing will be introduced in two parts.
Multi-layer Automatic Testing
The previous article centered on PlatON network automatic testing, and the peripheral products derived from privacy AI computing network, such as blockchain browser PlatScan and blockchain wallet ATON, we also need to carry out automatic testing on them.
We mainly call on the RPC interface of the node to perform automatic testing for the PlaON network. For peripheral products, it involves a broader range of tests, covering UI, interface, database, and many other testing levels. To build comprehensive automatic testing, we need to carry out layered automatic testing from various layers and perspectives.
Principles of Layered Testing
So, how to carry out layered automatic testing, and how to avoid overlapped testing of the same scenario because of the multiple testing layers? We have sorted out three principles of layered automatic testing:
Set a clear main layer: Choose one main layer based on the emphasis of the business, for example, UI, interface, or others, and the automatic testing scenario should focus on the main layer.
Complement with other layers: In addition to the main layer, other layers should be used as auxiliary layers to complement the shortcomings of the main layer. When the interface layer is chosen as the main layer, the UI layer should be used to verify the UI and the business logic should be tested at the interface layer.
Multi-layer integration: When verifying the business processes, automation use cases should enable end-to-end testing, checking at multiple levels to achieve full-view coverage. Each layer should have its own Case, Fixture and Lib, and the layers are linked with the Fixture.
Application of Automatic Testing
PlatON’s automatic testing contains more than 2,000 testing scenarios and has a 90% coverage of the black-box testing scenarios. Meanwhile, we are continuously integrating the automatic testing, and combining it with the R&D workflow, making our contributions to smoke testing, iterative testing, and version release testing.