1.单元测试框架网址:
http://baidutech.blog.51cto.com/4114344/743740/
基本使用语法:
http://blog.csdn.net/ethanco/article/details/52330481
这个网址中讲解了基本的使用语法,下面不会在阐述这些语法的使用,下面直接讲解在Android Studio中第一个demo的构建
2.单元测试框架在Android Studio的配置和第一个demo。
在gradle配置如下代码:
引入了单元测试框架(junit和mock结合使用)
dependencies {
compile fileTree(dir:'libs',include: ['*.jar'])
testCompile"org.hamcrest:hamcrest-junit:2.0.0.0"
testCompile"org.mockito:mockito-core:2.8.9"
testCompile"org.powermock:powermock-module-junit4:1.7.1"
testCompile"org.powermock:powermock-api-mockito2:1.7.1"
// PowerMockRule,可以不使用RunWith使用PowerMock
testCompile"org.powermock:powermock-module-junit4-rule:1.7.1"
testCompile"org.powermock:powermock-classloading-xstream:1.7.1"
}
随便新建的一个工程app,在里面随意编写一个类(IdGenerator):
在构建一个类(ClassUnderTest),这个类是调用IdGenerator接口的类
现在我们要测试ClassUnderTest 类的methodToTest这个接口调用返回值是否正确,这个时候我们就会写一个单元测试用例,这个类一般放在android的Test文件夹(这个新建工程的时候Android Studio自动会有这个目录)下面(我是这么做的),这个类的名字我取名为StaticTest,看一下目录结构:
在看一下StaticTest类中的代码:
怎么运行这个单元测试用例呢,直接运行 StaticTest,右键这个类run或者debug都可以直接运行,上图中运行的结果图:
可以修改图中Assert中成14L试试,如果修改后Assert.assertEquals(14L,underTest.methodToTest());这个就会断言出来 测试用例运行失败,并会抛出错误堆栈。
下面是单元测试断言的堆栈:
可以看到expected是14,实际结果是15,出错在StaticTest.java 25行。
到此,PowerMock和Junit的使用入门到此结束,具体的一些语法可以参考:http://blog.csdn.net/ethanco/article/details/52330481