文章目录
前言
新建Panel面板进行图形化信号监测很常见,但在CAPL脚本中运用Panel相关函数能做哪些事儿呢?Panel相关函数是实现测试逻辑与可视化控制的核心工具,本文将重点介绍两个应用场景+函数解析。
一、隐藏调试控件
如下图,panel面板上会存在许多调试信号控件,在自动化测试时可通过在脚本中调用SetControlVisibility()函数进行隐藏。
CAPL自动化脚本实现
testcase yiyiCar_PanelTest()
{
int i;
dword j;
dword k;
//隐藏调试的控件
setControlVisibility("yiyiCar_Panel","EngineRunning",0);
setControlVisibility("yiyiCar_Panel","Light",0);
setControlVisibility("yiyiCar_Panel","PetrolLevel",0);
setControlVisibility("yiyiCar_Panel","Voltage",0);
// 用例逻辑代码
}
SetControlVisibility()函数解析
void SetControlVisibility(char[] panel, char[] control, long visible);
// 参数信息
// panel:panel面板的名称
// control:控制项名称,具体的控件信息
// visible:panel元素是否展示,0不展示,1展示
//设置面板内的全部控件不可见
SetControlVisibility("yiyiCar_Panel","",0);
//设置全部面板内的全部控件不可见
SetControlVisibility("","",0);
二、禁用控件避免测试误触
如下图,panel面板上会存在一些基础功能控件,如控制器供电开关。在自动化测试时若误触开关控件导致断电,测试被迫停止。可通过在脚本中调用EnableControl()函数对控件进行选择性的激活与禁用操作,即可实现供电开关控件在测试过程中保持不变。
CAPL自动化脚本实现
testcase yiyiCar_PanelTest()
{
int i;
dword j;
dword k;
//禁用控件操作
EnableControl("yiyiCar_Panel","IT6723_power",0);
// 用例逻辑代码
}
EnableControl()函数解析
EnableControl()函数定义如下:
void enableControl(char panel[], char control[], long enable);
// 参数信息
// panel:panel面板的名称
// control:控制项名称,具体的控件信息
// enable:panel元素是否激活,0禁用,1激活
//禁用面板上的全部控件
EnableControl("yiyiCar_Panel","",0);