缺点:UE桩建立相对比较难。
(2)转换成C代码
建立UE桩,将代码抽象化生成用例脚本,执行用例时将用例脚本解析成源码,然后编译烧录到UE侧启动运行。
优点:用例格式简单
缺点:在编译成源码和烧录上较耗时,且整个测试系统变动性还是较大的。
综合上面2个方案,最后更倾向于第一个,不转换成C代码,主要原因是因为测试工具要相对稳定的测试环境,变动性太大不太合适。
3.2 功能模块设计
根据需求分析和可行性研究,以及对于总体设计的方案反复细化完善,可以大体的将整个系统分为如下图的几个模块,下图中我按照执行的顺序标记了箭头:
程序运行流程为:主界面模块启动后,系统将检测编辑模块的配置文件并完成其初始化的工作,然后启动下面2个子模块:运行界面模块,编辑模块。当启动运行界面模块时,系统自动检测仪表群的配置文件,并完成初始化,然后用户可以根据自己的需求修改执行模块,然后启动执行模块将数据转换成码流形式通过串口进行收发,即启动了下面2个子模块:数据传输模块,信息反馈模块。
编辑模块:编辑用例工程,包括新建,删除,插入用例集、用例、命令组和命令,保存工程,快速添加,在属性界面中修改属性等功能。
执行模块:用来执行用例,设置执行参数等功能。
自动配置仪表模块:根据工程和仪表配置文件自动选择合适的仪表群配置完毕,并显示在仪表群的LISTBOX中。
数据传输模块:把XML文件中的数据,逐个读出并依次写入BUF中,实现将数据转换成码流形式的功能。
信息反馈模块:根据在数据传输模块中发送和接收的数据,将PC-UE交互的情况反馈在运行界面的信息框中。
3.3 数据结构设计
3.3.1 脚本数据结构
工具的脚本结构并不是传统的一个XML文件构成,而是以potsprj作为根文件存在,根据文本中记录的数据来寻找下一个XML文件,下面我根据脚本的程序来解释一下。
脚步如下:
<?xml version="1.0" encoding="GB2312" standalone="no" ?>
<testprj mode="TD-LTE" name="集成测试工程" descr="LTE集成测试报告">
<casegroup id="1" name="用例集" descr="" res="aeroflex7100+UE" type="" runcnt="1" selected="TRUE" dir="1_用例集" file="1_用例集.xml" />
</testprj>
由于设定的目录是和potsprj文件在同一目录下,所以根据casegroup的属性来寻找下一个XML文件。首先dir为下一个XML文件所在的文件夹,file为找到下一个文件夹之后所需要打开的文件。
每一次打开新的XML文件时都会进行判断是否存在,以防止打开错误。在成功打开下一个文件之后和上面的步骤相同,继续根据节点的属性dir和file去寻找需要打开的文件取出信息,比如id,name。
这样设置的好处是将脚本规则化,可以很明确的找到节点的文件,将大量的数据分开处理,方便查找和修改。
3.3.2 节点数据结构
该工具的用例工程中节点以树结构的形式显示,其数据结构也是类似树结构一样,分为父节点,子节点,本节点数据3部分组成。
struct TREENODE
{
TixmlNode Parent; //存储接口套接字
TixmlNode Child;
TixmlElement msgstruct; //存储窗口句柄
};
由于程序中的节点都是从配置xml文件中提取出来的,采用的是开源的Tinyxml中所提供的接口去提取数据,同时在保存时也是保存为xml文件。
- 上一篇:Matlab一维条形码的识别+文献综述
- 下一篇:基于CORDIC算法的数控振荡器设计+文献综述
-
-
-
-
-
-
-
NFC协议物理层的软件实现+文献综述
浅析中国古代宗法制度
高警觉工作人群的元情绪...
g-C3N4光催化剂的制备和光催化性能研究
中国传统元素在游戏角色...
C++最短路径算法研究和程序设计
江苏省某高中学生体质现状的调查研究
上市公司股权结构对经营绩效的影响研究
现代简约美式风格在室内家装中的运用
巴金《激流三部曲》高觉新的悲剧命运