原创博客,只是记录我对工作的一些看法与想法,转载请注明出处。 我的联系方式: Email:Unitezhang@163.com

嵌入式黑盒自动化测试工具的一些想法与思路

上一篇 / 下一篇  2009-06-16 23:34:06

说到嵌入式软件的自动化工具,大家都会摇头,要么是白盒的工具,要么就是太专用。

嵌入式做白盒测试,如果是平台级的软件还是有必要的,但是如果是产品级的测试,基本上投入太大,得不偿失。

有没有简单一些的黑盒自动测试工具呢?

我是这么看待自动化测试工具的,输入、输出、预期结果。简单而言,自动化测试就是自动输入数据,然后记录输出数据,与预期结果进行比较,得到测试结果。

不管针对什么产品,在构建自动化测试工具时,都可以使用这个流程。

对嵌入式产品而言,难点在于,输入输出数据的载体该如何选择?

手机测试为例子,大家可以想到的是,利用GSM标准或扩展AT命令进行输入/输出/比较。这种方案使用AT命令作为数据载体,但是需要软件支持,比较麻烦。

手机的功能测试,基本上是使用键盘输入,屏幕输出。能不能在这上面想想办法?

使用键盘作为输入载体,使用屏幕作为输出载体,构建一个自动化测试工具,可行否?

制作一个键盘模拟板,与测试手机的连接接口与实际键盘与手机的接口一致,同时将键盘模拟板接入PC,使用PC控制键盘按键命令作为输入数据。

将屏幕与手机的连接取下,制作一个连接线装置,使用同样的接口连接手机与PC,这样原来在手机屏幕上显示的内容可以在PC上显示(当然,需要开发驱动)。

测试时使用PC控制键盘输入数据,记录屏幕输出数据,在完成第1次正确操作后,将屏幕输出数据置为预期结果,后续的回归测试不是都可以使用PC自动完成(当然,在需求发生变化造成界面重新设计后需要重新录制脚本)?

这种方案的好处是脱离了对软件的要求,即使软件平台发生变化,依然可复用。

同样的,其他的嵌入式软件测试,也可以使用相同的思路。GPS可以使用触摸屏作为输入数据载体,同样使用屏幕作为输出数据载体。MP3可以使用按键作为输入数据载体,屏幕与音频接口可作为输出数据载体。

开发难度与复用率?

测试团队可以编写一个工具框架,项目组的硬件成员可开发相关硬件,手机上的键盘与屏幕都设计出来了,转到PC上应该不难吧?软件成员既然在手机上定义了驱动,在PC上写个驱动不难吧?只要输入输出数据的载体不发生变化(出于采购以及成本的考虑,我想没什么公司会天天变吧),这些驱动可以一直沿用。可复用性还是可以接受的。

大家的意见呢?


TAG: 嵌入式 黑盒 自动化测试

Jackc的个人空间 引用 删除 Jackc   /   2011-03-10 14:27:11
很早的博文了,可惜以前没有关注到..
有一定可行性,但是对工具开发资源的要求有些高,主要有以下几个难点:
1.核心 AT指令集和驱动API的获取(手机这行获取这类东西还是比较难)
2.高级驱动/硬件开发(大型手机公司才有这类人才,中小型公司的驱动/硬件开发人员做这个工具有些够呛)
3.PC端测试工具(你只说了PC与终端同步的实现,缺少实际的录制、脚本工具,开源的工具并不一定拿来就能用上)

哎...09年就看到你这个博文,肯定好好和你聊聊
 

评分:0

我来说两句

Open Toolbar