AndroidTest之Junit测试

  • 目录

    什么是单元测试

    为什么要进行单元测试

    注释(Annotation)

    新断言之hamcrest断言

    Android Studio 中单元测试生成测试报告

    备注


  • 什么是单元测试

    • 对最小的可测试单元进行测试和验证
  • 为什么要进行单元测试

    • 单元测试使得我们可以放心修改、重构业务代码,而不用担心修改某处代码后带来的副作用。

      单元测试可以帮助我们反思模块划分的合理性,如果一个单元测试写得逻辑非常复杂、或者说一个函数复杂到无法写单测,那就说明模块的抽象有问题。

      单元测试使得系统具备更好的可维护性、具备更好的可读性;对于团队的新人来说,阅读系统代码可以从单元测试入手,一点点开始后熟悉系统的逻辑。

  • 注释(Annotation)

    • @Test:测试方法
      • expected = XXException.class
      • timeout = 100
    • @Ignore:被忽略的测试方法
    • @Before:每个测试方法之前运行
    • @After:每个测试方法之后运行
    • @BeforeClass:所有测试之前开始运行
      • 类还未初始化之前就需要执行的方法
      • 搭建的环境可在此准备
    • @AfterClass:所有测试结束之后开始运行
      • 关闭环境资源可在此执行
  • 新断言之hamcrest断言

    • assertThat
    • 使用hamcreat的匹配方法
      • a
        • allOf(greaterThan(),lessThan())
        • anyOf(greaterThan(),lessThan())
        • anything()
        • is()
        • not()
      • b
        • containsString("sss")
        • endWith("sss")
        • startWith("sss")
        • equalTo()
        • equalToIgnoreingCae("sss")
        • equalToIgnoreingWhiteSpace("sss")
  • Android Studio 中单元测试生成测试报告

    • 选择View-->Tool Windows-->Gradle
    • My Application-->app-->Tasks-->verification-->createDebugCoverageRepor
    • 运行测试用例
    • AndroidTest之Junit测试
    • AndroidStudioProjects\MyApplication\app\build\reports(对应test中寻找.index文件)
  • 备注

    • 遵守约定
      • 类放在test包中
      • 类名用Test结尾
      • 方法用testXXXX命名
上一篇:maven中依赖的继承


下一篇:测试技术