Android单元测试学习之 Junit4

本文介绍了Android开发中MVP模式与单元测试的关系,强调了单元测试的重要性和覆盖范围。文章详细讲解了Junit4框架,包括注解如@Test、@Before等以及断言方法,还给出了如何编写和运行测试类的示例。此外,文章提到了Android Studio的自动生成测试类功能,以及如何处理测试中的异常和超时问题。
摘要由CSDN通过智能技术生成

针对于第二点,在Android开发中,MVP是常用的开发模式:

对于一个View或者一组功能几乎相同的View,他们有自己M层数据,和相同的P层控制层。

我们都知道P层是处理业务逻辑的地方,所以测试类所测试的方法,都是P层的方法。

如果你代码设计合理,P层会覆盖所有的业务逻辑,而V层只处理UI更新而已。

所以MVP和单元测试相辅相成。

1.3 单元测试的覆盖范围和不能测试范围


可以测试的范围有:

  • 逻辑复杂的

  • 容易出错的

  • 不易理解的

有助于理解代码的功能和需求

  • 公共代码

比如工具类

  • 核心业务代码

一个产品里最核心最优业务价值的代码应该要有较高的单元测试覆盖率

不能测试的地方:

就是不能依赖系统变量,即同样的输入值,却会输出不同的输出值(比如用到了时间戳)

单元测试只能依赖传入的参数。

1.4 单元测试的基本原则


AIR原则

  • Automatic 自动化

全自动执行的,并非交互式的。测试用例通常是被定期执行的,执行过程必须完全自动化才有意义。

单元测试中不准使用print、echo来进行人肉验证,必须使用assert来验证。

  • Independent 独立性

保持单元测试的独立性,单元测试用例之间绝不能互相调用,也不能依赖执行的先后次序

  • Repeatable 重复性

单元测试是可以重复执行的,不能收到外界环境的影响,因为单元测试通常会被放到持续集成中,每次有代码check in时单元测试都会被执行。如果单测对外部环境(网络、服务等)有依赖,容易导致持续集成机制的不可用

2. Junit4

===========================================================================

2.1 什么是Junit4


Junit4是事实上的Java标准测试库,并且它是JUnit框架有史以来的最大改进,其主要目标便是利用Java5的Annotation特性简化测试用例的编写。这也说明想要使用Jnit4,得有JDK1.5以上

也就是说

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值