//Todo 实现消息分发或功能调用
sprintf(buffer, "Hello Stop");
printf("%s\n", "Hello Stop");
rmmi_write_to_uart((kal_uint8*)buffer, (kal_uint16)strlen(buffer), KAL_TRUE);
}
else
{
/* unrecognized command */
/* generate final result code: "ERROR" */
sprintf(buffer, "ERROR");
printf("%s\n", "ERROR");
rmmi_write_to_uart((kal_uint8*)buffer, (kal_uint16)strlen(buffer), KAL_TRUE);
}
return;
}
kal_uint8 custom_get_atcmd_symbol(void)
{
return (CUSTOM_SYMBOL);
}
2. 图像识别
图像识别主要通过抓取LCD屏幕显示图像进行智能识别来模拟测试工程师的双眼辨识文字或图像信息,以此判断测试结果。主要涉及图像的获取和对比分析,智能识别是一个比较专业的研究领域,更进一步的研究需要进行调研,目前我们可以考虑是否能够通过第三方工具来实现,比如借助目前已经成熟的测试工具QTP等。对于图像获取在手机平台上应该具备这样的接口,或者自行开发这个接口。
3. 录制回放
录制的信息及相应的实现方式如下:
1) 按键消息:由TestAgent捕获该消息并同步给PC端的TestTool
2) 笔点消息:由TestAgent捕获该消息并同步给PC端的TestTool
3) 坐标:由TestAgent捕获该坐标信息并同步给PC端的TestTool
4) 响应结果(GUI界面回放的预期结果):通过图像抓取接口抓取图像并同步给PC端的TestTool(如果做到极致的话在PC端所呈现的GUI界面与实际手机GUI界面同步一致,等同于PC机上的显示为手机GUI的一个镜像)
5) 时钟同步:操作步骤的时间点、操作的先后顺序、输出结果响应时间
6) 录制脚本组装:TestTool将所有的录制信息进行处理并组装成一套可运行的测试脚本,要求运行该脚本后能够与录制时的操作完全一样,并能将回放时的实际结果与预期结果进行比较从而得出执行结果。
7) 回放:主要是运行组装好的测试脚本,将回放时的实际结果与预期结果进行比较从而得出执行结果,关键点还是图像识别。
4. 测试管理
1) 脚本语言:可以选用Python、TCL作为脚本语言,用一些开源的工具进行脚本文件的管理维护。
2) 测试数据:需要建立一个数据仓库管理数据,比如录制时产生的消息、坐标、GUI图像信息等。
3) 测试结果管理:主要涉及测试报告的呈现及保存。
五、 辅助工具及设备
1. 串口线
2. 超级终端(PC机自带)或者手机厂商提供的配套工具
3. 脚本编写、调试、维护及管理工具(开源的比较多)
文章来源于领测软件测试网 https://www.ltesting.net/