美文网首页码农进阶之旅Android知识Android开发
AndroidStudio测试(三)单元测试

AndroidStudio测试(三)单元测试

作者: 泅渡者 | 来源:发表于2017-02-13 13:01 被阅读823次

这篇文章本来想写技术贴,但是思来想去还是给大家呈上总结贴。

一:什么是单元测试?


官方定义:单元测试是开发人员编写的、用于检测特定条件下目标代码正确性的代码。

二:为什么要做单元测试?


1.便于后期重构。单元测试可以尽可能的覆盖每一项功能的正确性,这样就算后期开发也可以有保障的增加功能或者更改程序结构。

2.优化设计。编写单元测试将我们从调用者的角度观察和思考,迫使我们的设计易于调用和测试,并且解除软件中的耦合。

3.文档记录。单元测试是一种无价的文档,他是函数或类如何使用的最佳解读文档,并且可编译,永远与代码同步。

4.测试方便。相对于手动去测试每个临界值来说这个更加便捷更加省时省事。

三:不写单元测试的接口!!!!

1.单元测试太花时间

软件开发工作那么忙,哪有时间再去写测试,这可能是我们程序员最多的借口。但是真的是这样么?你有没有想过,导致你加班的原因就是你花了太多的时间在手动测试、调试程序上。从而没有考虑到灵活性与设计,当发生需求变更时需要花很多的时间在复杂的代码中完成特定的功能。而这些修改又有可能引发新的BUG。又需要你进行手动的测试,调试、、、、如此的反复。

2.测试不是我的工作

测试的确不是开发人员的工作,但是单元测试确实是开发人员的工作,单元测试是保证单吗正确下的白盒测试。

3.代码编译都通过了还测什么

代码编译通过并不表示你的代码没有错误,比如临界值等等。

4代码原来就没有单元测试,且难以测试

这些基本是接受 别人的项目,而原来的代码没有编写单元测试,再加上之前的代码比较混乱,此时正是需要单元测试的时候,你需要详细的分析降低代码的耦合度,一块块的去拆解。

四:什么是正确的单元测试?

一:边界条件

边界条件是单元测试的重点测试,因为很多Bug都出现在临界值。

①一致性:值是否和预期值一致。

②有序性:值是否像预期那样有序或者无序。

③区间性:值是否位于合理的最小值和最大值之间。

④依赖性:代码是否引用了一些不在控制范围内的外部资源。

⑤存在性:值是否存在。

⑥基数性:是否恰好有足够的值。

⑦时间性:所有的事情发生是否是有序的,是否在正确的时间。

二:覆盖执行路径

该处重点是对多条件的判定,必须覆盖所有可行路径。

看完这些大家是否觉得我们的开发流程有缺陷呢?

欢迎大家关注我的文集,会持续更新。

相关文章

  • AndroidStudio测试(三)单元测试

    这篇文章本来想写技术贴,但是思来想去还是给大家呈上总结贴。 一:什么是单元测试? 官方定义:单元测试是开发人员编写...

  • AndroidStudio测试(一)单元测试

    1.配置 使用AndroidStudio创建测试项目采用默认配置即可。 2.编码 在项目中首先创建Calculat...

  • 安卓单元测试 - 收藏集 - 掘金

    Android 单元测试 (三):JUnit 单元测试框架的使用 - Android - 掘金 我们写单元测试,一...

  • AndroidStudio 进行单元测试

    单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来...

  • 软件测试类型

    按阶段划分 一.单元测试 二.集成测试 三.系统测试 四.验收测试 按阶段划分-单元测试 什么是单元测试(Unit...

  • 超级详细的Junit单元测试教程

    文章目录 Junit单元测试 一、什么是单元测试? 二、单元测试的重要性 三、黑盒测试与白盒测试 3.1 黑盒测试...

  • 单元测试

    一.单元测试是什么 二.单元测试可以做什么 三.单元测试不能做什么 四.为什么要做单元测试 参考资料: https...

  • Android单元测试

    单元测试不是集成测试,单元测试只是测试一个方法单元,不是测试一整个流程。单元测试的目标函数主要有三种: 有明确的返...

  • SpringMVC-单元测试

    良好的开发习惯从单元测试开始。基于Web开发的单元测试可以分为三层进行,Controller层的单元测试、Serv...

  • 单元测试

    内容 单元测试 参考文章: [iOS单元测试系列]单元测试框架选型 iOS单元测试:Specta + Expect...

网友评论

    本文标题:AndroidStudio测试(三)单元测试

    本文链接:https://www.haomeiwen.com/subject/dfizittx.html