Android、JUnit深入浅出(一)
21 十 2009 Android SDK 1.5已经将JUnit包含进来了,但是一直没有去深入了解,以前在使用一些C++的开源库中学习过与CPPUnit,简要分析过其主要框架,如下:
这次在学习Android SDK 1.6中的例子程序APIDemoes中的过程中,看到了一个test文件夹,似乎就是使用了JUnit,于是就开始学习Android中如何使用JUnit。APIDemoes\test文件夹下的测试代码相对比较复杂,我们会循序渐进的学习,逐步深入的理解,在后面为大家详细解析如何阅读这些测试代码,本篇幅就初步解析JUnit。
什么是 JUnit ?
JUnit是采用测试驱动开发的方式,也就是说在开发前先写好测试代码,主要用来说明被测试的代码会被如何使用,错误处理等;然后开始写代码,并在测试代码中逐步测试这些代码,直到最后在测试代码中完全通过。
现简要说JUnit的4大功能
1.管理测试用例。修改了哪些代码,这些代码的修改会对哪些部分有影响,通过JUnit将这次的修改做个完整测试。这也就JUnit中所谓的TestSuite。
2.定义测试代码。这也就是JUnit中所谓的TestCase,根据源代码的测试需要定义每个TestCase,并将TestCase添加到相应的TestSuite方便管理。
3.定义测试环境。在TestCase测试前会先调用“环境”配置,在测试中使用,当然也可以在测试用例中直接定义测试环境。
4.检测测试结果。对于每种正常、异常情况下的测试,运行结果是什么、结果是否是我们预期的等都需要有个明确的定义,JUnit在这方面提供了强大的功能。
以上部分与我们平常使用IDE调试的过程是完全一样的,只不过是增加了测试用例管理、测试结果检测等功能,提高了单元的效率,保证了单元测试的完整性,明确了单元测试的目标。
以上4大功能,在JUnit的框架中是如何实现的了,在下一篇幅JUnit例子分析中,通过一个简要的例子,详细说明4大功能是如何实现的。
分享到:
相关推荐
AndroidJUnit4引入了`@RunWith(AndroidJUnit4.class)`,这使得我们可以使用JUnit4的特性,同时利用Android的测试环境。例如,`@UiThreadTest`注解用于表示该测试必须在主线程运行,而`@SmallTest`, `@MediumTest`, ...
`AndroidJUnit4.class`则告诉JUnit4使用Android测试扩展。 为了运行这些测试,需要在`build.gradle`中配置测试任务。`android-junit5`插件提供了一个`test`任务,可以覆盖默认的`testDebugUnitTest`任务: ```...
JaCoCo是一个Java代码覆盖率工具,可以与AndroidJUnit配合,提供详细的代码覆盖率报告。 十、持续集成与测试自动化 将AndroidJUnit集成到持续集成(CI)工具,如Jenkins、Travis CI或CircleCI,可以自动运行测试并...
要开始使用JUnit4进行Android测试,你需要创建一个测试类,这个类通常会放在项目的`src/test/java`目录下,并且需要继承`androidx.test.ext.junit.runners.AndroidJUnit4`。这个测试类中的方法会被识别为测试用例,...
在Android开发中,JUnit是一个非常重要的单元测试框架,它使得开发者能够对应用程序的各个模块进行独立测试,确保代码的质量和功能的正确性。本篇将详细介绍Android中的JUnit使用及其相关知识点。 首先,JUnit是一...
一个简单的Android JUnit测试类通常会继承自`androidx.test.ext.junit.runners.AndroidJUnit4`。这个运行器使得我们可以在Android环境中使用JUnit 4的特性。例如: ```java import androidx.test.ext.junit.runners...
在Android开发中,测试是不可或缺的一环,而JUnit作为Java领域广泛使用的单元测试框架,也在Android平台上得到了应用。"android-junit-report"项目便是针对Android环境优化的JUnit测试报告生成工具,旨在帮助开发者...
在`TestApp`中,我们可以使用`@RunWith(AndroidJUnit4.class)`注解,结合`@Test`注解的测试方法,以类的形式组织多个测试用例。 总的来说,`JUnit`和`ActivityUnitTestCase`的结合使用,使得我们能够有效地对...
然后,在这个目录下创建一个新的Java类,继承自`androidx.test.ext.junit.runners.AndroidJUnit4`。这样,你的测试类就可以使用JUnit4的注解了。 4. **编写测试用例** 使用JUnit的`@Test`注解标记测试方法,这些...
这个类通常位于`app/src/test/java`目录下,并且需要继承自`androidx.test.ext.junit.runners.AndroidJUnit4`,这样就可以在Android环境中运行JUnit测试。例如,如果你要测试名为`MainActivity`的Activity,你可以...
此外,可能还会涉及到`ActivityInstrumentationTestCase2` 或 `AndroidJUnit4` 测试类,它们是Android测试库提供的测试基类,提供了启动和控制`Activity`的能力,这对于测试与`Spinner`交互的`Activity`是必要的。...
要进行Android的JUnit单元测试,我们需要创建一个测试类,该类继承自`AndroidJUnit4`类,这使得我们可以使用JUnit4的特性。例如: ```java import org.junit.runner.RunWith; import android.support.test.runner....
#### 一、JUnit简介及在Android中的应用 JUnit是一种广泛应用于Java编程语言的单元测试框架。它最初由Kent Beck和Erich Gamma设计并实现,目的是为了支持测试驱动开发(Test-Driven Development, TDD)的方法论。在...
测试类需要继承`androidx.test.ext.junit.runners.AndroidJUnit4`,并使用`@Test`注解标记测试方法。例如: ```java import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.Test; public class...