Wings - Enterprise Level Unit Test
Automatic Coding Engine
Support c/c++
Automatically Build Test Case Input
Automatically construct input use cases for the target program, effectively solving the common problem of test cases
Automatically Complete Drive Coding
Automatically complete the static analysis of the target program and automatically complete the process of writing the driving code
Support c/c++ Advanced Data Structure
Support complex data structures such as linked lists, containers, templates, etc.
Support c/c++ Special Type Assignment
Void *, function pointers, interfaces and other special types
Support Custom Assignment of System Variables
The system variable type uses the template to assign parameters by the user
Support Visual Representation of Test Input and Output
Ability to visually display test cases and intuitively understand the structure of test cases
Quickly Complete the Analysis and Coding Process
Able to complete the analysis and generation process of large-scale programs in a very short time
Ability to Get Run-time Output Use Cases
Ability to capture output use cases of target programs while the program is running
Technology Architecture
How it Works
Code Static Analysis
Wings can quickly extract the information of the target program and obtain the type information of parameters, global variables, member variables, etc. For complex data types, such as structures, classes, and other nested types, it can be parsed into basic types layer by layer.
Automatic Driver Code Generation
Wings is able to quickly automate the construction of c/c++ functions and class-driven code as follows.
· Builds the constructor and destructor of the class, creates and releases the object of the class under test
· Builds the parameters of the function under test, global variables, calling procedures, and return value information
· The googletest framework is used to automatically build the return value with the expected output code
Wings can support any type and object-oriented syntax
Wings are the main features of can support any type and the grammatical features of object-oriented, for type, able to support basic type int, double, float, std::string, arbitrary complex structures such as types, structures, unions, enumeration, linked lists, multistage Pointers, arrays, tree, graph, arbitrarily complex objects, such as the standard library containers, custom template the aspect of syntax: wings can deal with the static function, protection and private functions, classes are defined in the private structure, class contains the delete keyword with the default function for special treatment, polymorphism, and complex class hierarchies.

Parameter Capture Code is Automatically Generated
The Wings parameter capture function is mainly to obtain the function parameters, global variables and return value data at runtime.
Construction of Test Input Use Cases
Wings automatically generates test cases for different types, and visualizes the hierarchy of use cases with data tables.
Special Type Assignment
Wings handles different types, such as special types such as void*, function pointers, system types, etc. For these special types, Wings provides different operations for special processing, such as templates, automatic parameter parsing, etc.
Why Wings
Improve Unit Testing Efficiency
Automatically write unit test drivers for c/c++ code.
Used for Randomness Testing
You can generate a large amount of random data that meets the program input in batches, observe the running behavior of the program, and solve security problems.
Backward Compatibility (regression) Testing
It is used for the combination of program-level testing and system testing. In the process of system testing, the data of function operation can be captured. When the code changes, the automatically generated driver code is combined with the same input and comparison output to complete the system playback. Contrast differences. Can be used for fast backward compatibility testing.
Combined with Coverage Testing
In the future, the superimposed test data search algorithm can increase the coverage of unit tests to a very high level, which can reduce the pressure and investment of system testing on the right. At the same time, the traditional model of using cases to meet the coverage will be continuously designed to be converted to a mode that directly meets only the input and output of the review program.
Ready to Get Started?