6.2Emma Code Coverage
在软件测试中,测试用例对于被测对象的代码覆盖率而言一直是 -一个很好的参考标准。Android中也提供了比较方便的工具emma。在官方文档中也有对emma详细的描述。
更多的详情可参考:
http://developerandroid.com/tools/testing/testing _otheride.html
emma可以让我们很方便地统计Android junit test的测试代码覆盖率,只要稍做修改,就能帮助我们实现以黑盒手动测试的方法来统计代码覆盖率。
接下来我们就来看一一个例子,这个例子使用linstrumentation框架并结合第5章讲到的Ant工具实现。.
(1)我们先使用如下的emulator命令新建-一个模拟器:
android create avd -n chenye -t 17 -n emulator name -t android target ID
(2) Android APIs 17对应的版本是4.1.2, 成功建立模拟器之后,可以看到以下日志.
Created AVD ' chenye' based on Google APIs (Google Inc.), ARM (armeabi-v7a) processor, with the following hardware config: hw. lcd. density=240 vm. heapSi ze=48 hw. ramSize=512
(3)接着通过emulator 命令来启动模拟器。启动完毕之后,我们开始创建一一个被测工程。在这个例子中,我们选择Android自带的项目工程snake。在elipse中选择File-→New-→projetct..,随后选择Android Sample Project,如下图所示。
(4)单击“Next” 按钮之后选择Android4.1.2和Android自带的Snake工程。
(5) 创建好被测工程Snake 之后,我们需要继续创建测试工程Snake. _test。 单击eclipse中的File- →New-→Project...,选择Android Test Project,如下图所示。
(6) 选择要测试的项目工程,本例中我们选择Snake,,如下图所示。
(7)这样我们被测工程Snake和测试工程Snake. _test 都已经创建成功。测试工程目前还没有任何测试类,我们需要创建一个JUnit Test的测试类snakeTest,如下图所示
类名为snakeTest,如下图所示。