自动化测试,目前的实践越来越多,也渐趋成熟。几乎遍布各个平台,这里总结下前段时间的自动化测试解决方案。
Web测试,主要是针对嵌入式平台的browser,这个测试是间接的。因为目前这个device还不支持selenium,没有办法直接对该device上的browser进行测试,所以我们引入了safari,开发了一个plug-in,远端控制模拟器,类似于MyMobiler至于windows mobile.
这样,在PC上构建java,selenium,junit环境,通过USB连接device,远端间接测试。这个测试我们的整体框架如下:
--测试framework:Selnium,junit
--开发语言:Java,javascript
--开发工具:Eclipse
--远端模拟器:Safari+Plugin
--report:log4j
为了特定于这个device做automation test,在我们封装了selenium,junit,写了一个mini-framework。
这个框架很实用,减少了很多重复的工作。但是有个致命的缺点,就是特定于这个device的特定功能。所以,为了这个框架的通用性,我准备该写这个框架:
这个mini-framework的主要部分:
--Controller:主要封装test case/suite的lifescyle,start/execute/clear/stop, mangage resource and thread and etc.
--Check:主要封装check/compare system,junit
--report: 主要封装log 信息和等级(info,debug,warn,error), report content and format(text and format)
--file:主要封装文件的I/O
--UI:这个是可选的
对于在Windows上的application的测试,我们选择了AutoIT。主要框架是:
--测试framework:AutoIT
--开发语言:C,AutoIT,jscript
--开发工具:SciTE
--Report:AutoIT com扩展到TXT,Excel,Work,Html,并且有text、picture两种格式
这对Windows mobile的测试尝试了两种方案:
1.Emulator/device + MyMobiler
--测试framework:AutoIT
--开发语言:C,AutoIT,jscript
--开发工具:SciTE
--Report:AutoIT com扩展到TXT,Excel,Work,Html,并且有text、picture两种格式
2.WMTF
这个框架比较复杂,下次再讲。
以上测试工作的管理主要使用了JIRA和bugzilla,代码管理工具是SVN。