Wings是一个自动生成工具for unit测试用例驱动框架。工具主要生成单元测试驱动代码和测试数据。使装置测试智能化和全自动,测试非常高效。
软件特色
1.对于用C语言开发的具有任意复杂参数结构的系统,可以自动生成测试驱动程序。
2.它可以多层编译和分析测试函数的参数,并自动生成复杂参数赋值的代码。
3.支持被测函数引用的全局变量的分析和自动赋值程序的生成。
4.能够区分系统变量和用户变量。对于复杂的系统变量,用户可以自定义分配模板。
例如文件类型,而不是展开所有复杂的系统变量。
5.支持多级可视化数据表为变量赋值,无需关注驱动程序本身。
数据表可以表达任意深度和多层次的数据关系。用户只需编辑表格数据,自动生成的驱动程序将自动完成表格数据的读取和参数赋值的构造。
6.Wings支持所有数据类型(基本类型、结构、指针、数组、枚举等。)和C语言的高级数据结构。
比如链表的解析以及对应的驱动和数据表框架的生成。
7.Wings生成的代码与手工编写非常相似,可读性强,具有自注释功能,并且具有层次化的缩进和代码排列。
功能介绍
(1)程序参数深度分析
Wings通过编译器的底层技术,将输入的源文件按照功能组成模块对象。对象包含函数的输入参数和返回值类型等信息,这些信息由驱动程序功能模块和测试用例模块使用。以每个文件为单位,深入分析每个函数的每个参数,可以准确分析和分解嵌套类型和复杂类型,将复杂类型逐层解释为基本数据类型,并生成参数结构的描述文件(PSD)。
(2)功能驱动自动生成模块
根据psd文件的格式信息,自动生成被测源程序的所有驱动函数。unit测试流程不再依赖于开发人员手动编写测试函数。只需将生成的驱动函数与测试中的源文件一起编译即可执行测试并查看测试的结果。测试驱动程序自动生成程序基于PSD描述,自动构造驱动被测程序运行的所有参数和必要的全局变量,并可以根据复杂变量的层次结构生成结构化的测试驱动程序,这可以为编写单元测试用例节省大量时间。
(3)测试自动数据生成和管理
它用于自动生成测试数据。测试数据对应被测函数提取的信息,数据存储在具有一定层次逻辑关系的json文件中。分解和扩展后的数据和数据类型之间存在一一对应关系。这些数据用户可以根据业务需求任意边缘化,它们可以用json文件以结构化和分层的方式显示,这非常清晰。调用测试函数时,测试数据包括全局变量值和参数值。
施用方式
接下来,我们尝试使用wings完成cell测试框架和测试数据的自动生成(首先准备需要测试的C语言项目)。
第一步:打开wings工具,选择测试项目的主目录。
步骤2:在项目操作中单击Analyze and Generate来解析。c文件并将其保存为XML格式。生成的文件保存在项目目录中的FunXml和GlobalXml中,这两个文件分别是函数信息和全局变量信息。单击驱动器文件结构图,查看相应文件的功能结构信息。
在上图中,您可以查看所有的驱动程序功能。c文件以及与函数对应的参数信息和全局变量信息。
第三步:点击功能驱动生成,完成项目驱动框架的自动生成。驱动程序文件保存在wings_projects下的driver文件夹中。单击驱动程序文件以查看相应的驱动程序生成代码。c文件。
单击单个函数以突出显示该函数的位置,双击函数参数以定位每个参数的赋值单元并查看每个参数的特定驱动程序赋值代码。
第四步:点击值功能操作的值生成按钮,对应生成测试数据。
界面中显示为单个函数的测试数据可以根据需要修改测试次以重新生成测试数据文件,或者可以根据需要修改特定的测试数据。
第五步:将驱动文件加载到项目目录中,与源文件一起编译,即可运行。
如果要查看相应的函数信息和全局变量信息,右键打开相应的参数结构描述和全局参数结构描述。
参数结构描述:显示函数名称、参数数量、参数类型和复杂类型的扩展形式。
全局参数结构描述:显示全局变量的结构信息。
使用过程中的注意事项:
(1)在编译源文件的过程中,需要在源文件中手动注释和调整main函数,wings会自动生成调用驱动函数的main函数。
(2)如遇特殊分配,可自行添加模板分配方式,添加后重新生成驱动文件。
例如,如果遇到FILEL类型的赋值,可以在模板中添加相应的赋值方法。
Wings(测试自动化工具)相关下载
- 查看详情sql格式化工具简体2024-02-15
- 查看详情金浚桌面编程简体2024-02-11
- 查看详情smali2java简体2024-02-10
- 查看详情GX Works 2(三菱PLC编程软件)简体2024-02-10
- 查看详情TscanCode(静态代码扫描工具)简体2024-01-29
- 查看详情 sql格式化工具 简体 2024-02-15
- 查看详情 金浚桌面编程 简体 2024-02-11
- 查看详情 smali2java 简体 2024-02-10
- 查看详情 GX Works 2(三菱PLC编程软件) 多国语言[中文] 2024-02-10
- 查看详情 TscanCode(静态代码扫描工具) 简体 2024-01-29
- 查看详情 ProtoPie 简体 2024-02-17
- 查看详情 raptor 简体 2024-02-17
- 查看详情 Android逆向助手 简体 2024-02-17