Labview项目01:标准可配置序列测试框架

项目目标:

1)使用Labview基础开发环境开发一个标准可配置测试框架;

2)可以根据自己的需求编写测试序列;

3)单步测试功能可自主添加编写;

4)界面可以实现基本配置,修改测试序列功能;

5)有权限管理功能;

根据上面的需求,编写了下面的测试框架,测试序列较为简单,有延时、预定值输出、生成随机值输出等功能,并能对最终的结果有整体判断和结果输出,执行结果如下:

运行环境:

Labview 2020(32位)

1.1 界面设计

界面设计的思维导图如下:

1.1.1 主界面

1个表格控件------显示每个测试序列结果;

1个布尔控件------显示OK和NG;

1个字符串显示控件------显示运行状态;

1个数据簇------用于计数;

1个清除按钮------用于清除计数;

1.1.2 调试界面

2个多列列表框------1个显示加载的序列、1个显示调试的序列;

10个按钮------用于加载序列、选择单个序列、选择全部序列、添加序列、删除选定序列等功能;

1.1.3 设置界面

1个路径控件------加载测试序列路径;

1.1.4 登录界面

1个下拉列表------显示账户信息;

1个字符串输入框------用于输入密码;

2个按钮------登录和登出;

1个字符串显示控制------显示登录状态;

1.2 程序设计

程序设计流程图:

1.2.1 整体程序

如下图所示,这是Main程序的程序框图,右边是将所有的控件引用集合到一个簇中,用于程序的控件的操作。右上是事件结构,用于控件的触发事件。右下是用于PLC或者其他IO模块输入触发信号用。中间的子VI用于整个测试程序的功能实现方法。

1.2.2 初始化程序

1)QueueInit.vi

创建队列,以及控件初始化

2)MainEvent.vi

MainEvent中有两个队列:Main和Steps,Main队列主要用于处理控件的事件触发。Steps队列用于处理测试执行流程。

3)MenuButtonChange.vi

改vi用于处理主界面切换功能,初始化的时候切换到首页。

4)Read ini.vi

该子vi用于读取密码和测试序列文件路径。

5)MainInit.vi

该子vi用于控件的初始化。

6)InitSteps.vi

用于测试结果控件初始化。

1.2.3 调试测试序列程序

1)LoadSteps

从序列文件中读取到ListSteps控件中。

2)Select

将ListSteps中的选中行添加到DebugSeps列表框中。

3)SelectAll

将ListSteps列表框中所有行添加到DebugSeps列表框中。

4)AddLine

添加一行测试序列。

5)RemoveLine

移除掉选定的那一行。

6)UpSteps

引用DebugStepsUp.vi

DebugStepsUp.vi内容,功能是向上移动一行。

7)DownSteps

引用DebugStepsDown.vi

DebugStepsDown.vi内容,功能是向下移动一行。

8)Delete

删除一行。

9)Empty

清空DebugSteps列表框中数据。

10)Debug

DebugStart.vi中内容,触发自动测试功能。具体自动测试流程可以参考后续的1.2.4节

1.2.4 自动测试程序

自动测试流程图如下:

1)ReadInput

在下面GetSts分支中添加读外部IO的程序,如果有一个上上升沿就会触发Start事件。

2)Start分支

在Steps队列中的Start分支调用StepsStart.vi

StepsStart.vi中如果停止的话,恢复状态。

StepsStart.vi中读取测试序列,如果是非0行,赋测试状态,执行Auto分支。

3)Auto分支

在Steps队列中的Auto分支调用AutoSteps.vi

AutoSteps.vi判断是否是最后一步,如果不是调用CallVI.vi

CallVI.vi用于解析指令,如果指令是A_**.vi就执行A分支中的程序。

如果指令是N_**.vi就执行N分支中的程序。

1.3 使用流程

使用流程图如下,分为四步:

1.3.1 编写测试vi

在项目文件中的StepVI文件夹下新建测试vi,格式为A_**.vi和N_**.vi。

其中,A_**.vi是没有输出和判断的序列,N_**.vi有测试结果和判断的序列。

1)范例A_Delay.vi

根据输入第一个参数分解出延时时间,进行延时。

2)范例N_Random.vi

根据输入第一参数,产生0~参数的随机数,然后根据上下限进行判断。

1.3.2 编写测试序列

1)在界面上设置测试序列文件路径

2)打开CSV文件

添加测试序列,其中

StepName:根据自己需求编写,对程序执行没有影响;

CallVI:这个是调用的子vi,需要和自己编写的子vi名称相同;

NotShowOnUI:是否在主界面上显示结果,1为不显示;

LowerLimit:N_**.vi的判断下限;

UpperLimit:N_**.vi的判断上限;

UNITS:单位;

Param1~10:输入参数,在测试子vi中使用,预设最多10个参数;

设置完成后,保存。

1.3.3 调试测试序列

在Debug界面可以调试测试序列,添加、删除、修改等功能。修改完成后可以使用Debug按钮测试修改结果。

双击想要修改的序列,即可弹出修改框,然后进行修改。

1.4 运行

调试完成后,点击Start按钮,即可在主界面看到按照测试序列一步一向下执行,最终会出现测试结果。

该项目是一个用于测试的通用项目,可以作为参考学习项目也可以作为正真的实用项目。

相关推荐
汽车仪器仪表相关领域11 小时前
KRYPTON坚固型IP67 EtherCAT总线数据采集模块:工业级分布式采集方案
分布式·功能测试·汽车·压力测试·可用性测试
浅浅的小草14 小时前
【LabVIEW】新手如何分析Actor Framework的范例反馈蒸发冷凝系统
labview
LabVIEW开发1 天前
LabVIEW 通过以太网控制 Yokogawa WT3000 功率分析仪:tmctl.dll 与原始套接字方案
网络·labview·labview知识·labview功能·labview程序
Anhty2 天前
2026 实测 4 款 AI 变声器|QQ 聊天伪装声线,告别僵硬假声
人工智能·功能测试·ios·智能手机·安卓
泽众云测试2 天前
泽众软件与日联科技达成合作,TestOne自动化测试平台助力搭建工业检测装备数字化品控防线
功能测试·测试工具·自动化
LabVIEW开发5 天前
LabVIEW 如何把地下震源定位误差做到5米内
fpga开发·labview·labview知识·labview功能·labview程序
LabVIEW开发6 天前
LabVIEW 把伺服调参从编程工作变成了点鼠标
labview·labview知识·labview功能·labview程序
是小艺吗。6 天前
第三方机构出具的软件功能测试报告的作用与流程说明,中承信安专业讲解
功能测试·单元测试·软件测试报告·软件功能测试·软件测评
天才测试猿6 天前
软件测试知识总结(基础篇)
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例