`

【转】我该如何写单元测试?

 
阅读更多

 在团队中,单元测试是较难推行的敏捷实践之一,我思考后觉得有以下原因:

1、主观上觉得会加大工作量,影响进度;

2、从未接触junit等单元测试框架,害怕接触新事物

3、团队形式上要求、形式上开展,但是未能结合培训、Code Review等方式持续推行

 

  其实单元测试是个相当简单的技术,当然,要做的完美也要花很多的心思。单元测试无非就是:AAA模式——Arrange(测试设置)、Act(调用测试里的代码)、Assert(测试通过的标准)。

测试设置:测试环境的准备,例如构造mock对象,设置数据库表数据等

Act:       编写测试方法,调用被测试代码

Assert: 利用断言设置通过的标准

 

  很多开发人员不写单元测试,但是他会写个main方法去测试代码,这样做不好的地方在于测试的方法提交后一般要求会删除掉,

不能做沉淀。main方法也不能进行自动执行测试。我建议还未踏入门槛的程序员可以先把main方法要写的测试代码,使用单元测试的结构

搬到单元测试中。踏出第一步,关键你已经出发,你要在路上!

 

最后,送你一篇文章:迈出单元测试的第一步

分享到:
评论

相关推荐

    转:EasyMock 单元测试

    NULL 博文链接:https://xuan0506.iteye.com/blog/1041296

    玩转Google开源C++单元测试框架Google_Test

    gtest, google test, c++ 单元测试利器啊,每次都在为自己编写的程序担心,每次在测试的时候都会出一大堆的问题,gtest利用单元测试技术,让问题发现在编码阶段,发现在自己的手里,他别人觉得自己写的代码没有bug~~

    Web前端开发 北京林业大学 JavaScript基础-单元测试

    单元测试1 HTML基础 单元测试2 单元作业1 CSS样式 单元测试3 单元作业2 CSS布局与定位 单元测试4 单元作业3 CSS3 单元测试5 JavaScript基础 单元测试6 单元作业4 JQuery & HTML5 & Bootstrap 单元测试...

    敏捷转型-测试驱动开发回顾

    并没有很好的完成该算法,并且在进行算法书写的时候花费了好长时间,写出来的代码比较长,思路没有如此清晰,听完后决定回来重写一遍,于是在两星期之后,进行回顾并重新推理书写了以下推演过程,当然,单元测试用例...

    antlr-visitor-test-demo:演示 ANTLR4 生成的访问者如何成为单元测试集

    该项目演示了如何对 ANTLR 访问者进行单元测试。 被测编译器 被测编译器将解析简单的加法(例如2+2 ),输出类似,但使用单词“PLUS”而不是加号运算符(例如2 PLUS 2 )。 文字测试 到目前为止,测试非常简单。 ...

    软件测试规范

    软件测试规范 目 录 一.概述 ................................................................................................................................................ 13 附录一 单元测试报告 ......

    软件测试工程师笔试题及参考答案

    5.单元测试能发现约80%的软件缺陷。(Y) 6.代码评审是检查源代码是否达到模块设计的要求。(N) 7.自底向上集成需要测试员编写驱动程序。(Y) 8.负载测试是验证要检验的系统的能力最高能达到什么程度。...

    在Eclipse中使用JUnit4进行单元测试(转)

    NULL 博文链接:https://seaizon.iteye.com/blog/752650

    对Ruby on Rails进行高效的单元测试的教程

    没有写测试代码之前,笔者用几个很大的方法来实现这种需求。结果可想而知,代码繁杂,维护困难,难于扩展。借业务调整的机会,笔者痛定思痛,决定从测试代码做起,并随着不断地学习和应用,慢慢体会到测试代码的好处...

    中科大软院软件测试3

    中科大软院,软侧实验3单元测试,人民币大小写转换,附带实验源码以及实验报告,仅供学习参考

    高效的单元测试Rails该怎样进行

    没有写测试代码之前,笔者用几个很大的方法来实现这种需求。结果可想而知,代码繁杂,维护困难,难于扩展。借业务调整的机会,笔者痛定思痛,决定从测试代码做起,并随着不断地学习和应用,慢慢体会到测试代码的好处...

    软件测试系列之单元测试

    1基本理论整理资料时发现以前给兄弟们灌输的单元测试的一些基本知识,放在这里供大家参考。里面参考了网上很多朋友的资料,这里没一一列出,一并谢过。ppt转的,比较乱,ppt已经上传到个人资源的,需要的可以去下载...

    PLSQLDeveloper8.0 中文用户指南.pdf

    使用文本编辑器写程序单元(过程、触发器等等)。 ? 使用 Oracle SQL*Plus 编译源文件。 ? 如果有编译错误,你必须找出它位于源文件何处,纠正它,转回到 SQL*Plus 重新编译它,然后再找下一处错误。 ? 使用 SQL*...

    非常实用的软件测试综合资料库

    因此,测试对于软件生产来说是必需的,问题是我们应该思考“采用什么方法、如何安排测试?” 二、软件测试的目的 软件测试的目的决定了如何去组织测试。如果测试的目的是为了尽可能多地找出错误,那么测试就应该...

    delphi通用函数单元一

    {* 返回将指定字符s1用字符串s2替换后的字符串,可支持大小写敏感由CaseSensitive操作} {example: replace('We know what we want','we','I',false) = 'I Know what I want'} function Replicate(pcChar:Char; ...

    pytruth:Python单元测试的断言框架

    提供流利的单元测试断言。 转换自Java实现 。 执照 PyTruth是根据。 免责声明 PyTruth不是Google的官方产品。 贡献 在创建请求请求之前,请参阅的。 支持 PyTruth不是一个主动维护的项目。 不提供任何支持。 它与...

    整个代码由一个头文件组成 json.hpp,没有子项目,没有依赖关系,没有复杂的构建系统,使用起来非常方便

    - 严谨的测试:所有类都经过严格的单元测试,覆盖了 100% 的代码,包括所有特殊的行为。此外,还检查了 Valgrind 是否有内存泄漏。 整个代码由一个头文件组成 json.hpp,没有子项目,没有依赖关系,没有复杂的构建...

    Python《剑指offer》算法实现-翻转单词顺序

    # Python实现《剑指offer》 ...能够单元测试用例。 5. 项目介绍原则STAR:situation、task、action、result 6. 所需的素质:扎实的基础知识、能写高质量的代码、分析问题是思路清晰、能优化时间和空间效率、学习沟通能力

    Python《剑指offer》算法实现-转换字符串格式

    # Python实现《剑指offer》 ...能够单元测试用例。 5. 项目介绍原则STAR:situation、task、action、result 6. 所需的素质:扎实的基础知识、能写高质量的代码、分析问题是思路清晰、能优化时间和空间效率、学习沟通能力

Global site tag (gtag.js) - Google Analytics