• Kǎfκã²⁰²⁰
    2019-01-25
    我有个执念,不愿主动写测试代码的程序员,不太可能是优秀的程序员

    作者回复: 我认同你的说法

    
     22
  • 张飞洪
    2019-01-25
    团队认知,开发周期,软件和生命财产关系不大,是单元测试的拦路虎

    作者回复: 还有一点是,知识,很多人不愿意写测试的原因是不会写测试。

    
     9
  • Johnsen 
    2019-01-25
    像前端项目主要以UI为主,版本迭代速度又很快的情况下怎么进行单元测试的编写

    作者回复: 首先,迭代速度快慢与是否写测试没关系,取决于工作是否完成是前面提到的 DoD。其次,前端之所以能够在今天成为一个独立的项目,在于它有大量的逻辑需要写,如今 JavaScript 相关的测试框架已经发展得很完整了,就按照正常的方式去写测试就好了。

    
     5
  • helloworld
    2019-02-26
    老师我有几个疑问:1. 单元测试是不是也要随着业务流程的变化而要持续维护?2. 对于变动非常频繁的业务流程是不是可以不写单元测试?因为考虑到时间的问题。3. 所有的大公司重要的项目(例如淘宝,京东等平台)是不是都有严格的单元测试编写或者执行规范?谢谢老师啦。

    作者回复: 1和2,本质上是一个问题。其实,很多人担心写测试会影响写代码,但实际上,写测试,尤其是单元会帮助写代码,否则,你用的手工测试或系统测试的方式来保证系统的正确性。如果你不花练习写测试,你永远学不会写测试,写测试在你看来就是浪费时间。

    这背后其实还隐藏着另外一个问题,为什么会变化快?因为一方面,前期的工作做得少,这是我们前面讲的内容要解决的,另一方面,设计做的不好,变化都是大变化,设计不做好,那就到处是问题,这是我们后面要讲的内容。

    3,国内公司在工程上做得都不够好,如果想看好榜样,可以看看国外的公司,比如,Google,它要求100%测试覆盖率。

    
     4
  • 🌲树根🌲
    2019-02-02
    我的想法可以在复杂度高,重要核心的模块先开始写单元测试。特别是公用、底层的,因为这些靠功能测试很难覆盖。

    单元测试难以推行主要是没有碰到质量的痛点,通常都依靠测试工程师来保证质量。我们之前就在遇到过质量崩塌,倒逼着我们去做,以保证质量。

    作者回复: 很多人不知道质量问题是一环套一环累积起来的。

    
     3
  • 苦行僧
    2019-03-29
    最近深有感触 单元测试写的越多 越能反思自己的代码 内建质量也能一步步建立起来 多写单元测试真是会产生蜕变的

    作者回复: 小病不治,会生大病的。

    
     2
  • One day
    2019-01-30
    从一个以前基本不写j测试代码的我,不过基本都有自动化测试以及测试人员,现在也开始写自己的代码的那部分测试,最开始的不情愿,到现在一直写,并且我会一直写下去,觉得这个是一种验证,每次看到自己写的代码再用自己写的测试通过之后信心满满呐

    作者回复: 坚持是蜕变的基础,加油!

    
     2
  • 毅
    2019-01-25
    团队开发人员的编程功力不够,即使想写单元测试也是奢望。那种前后台代码不分,用着先进的设计模式但写着落后方式实现的代码的,一旦开始了单元测试,估计大部分时间不是在实现上而是在频繁修改单元测试代码上了。

    作者回复: 说得有道理,不过,在接下来的几篇,我们先把关于测试的理念梳理顺了,知道问题出在哪,以后才好进行改进。

    
     2
  • wesleydeng
    2019-06-17
    现在单元测试有很多涉及到资源(比如db)的测试,这种情况下往往有依赖spring,导致了两个问题:
    1.spring启动慢
    2.dao测试不能跨环境,导致竟然因为有dao用了junit,不方便批量运行
    junit这两个问题怎么破?

    作者回复: 首先,涉及到Spring启动,这是集成测试,不是单元测试。
    其次,Spring提供了数据库的测试方案,测试之后,可以回滚,测试之间彼此不影响。用spring和test作为关键字可以搜到。
    再次,我个人推荐使用Spring Data,自己少写数据库逻辑。

    
     1
  • Geek_fe0336
    2019-03-21
    请教老师一个具体问题,mvc结构的工程,c层的单元测试要实际的去调用m层吗?需要和数据库里的数据做比对和验证吗?如果不用,c层的单元测试应该验证或测试哪些内容呢?

    作者回复: 在单元测试里,M 的接口是可以用 Mock 的,这才算是单元测试。涉及到数据库,就变成了集成测试。

    
     1
  • Lyam📵
    2019-03-01
    服务划分与编排做不好的、搞不清什么方法应该private/什么方法应该public的程序员,也会害怕写单元测试:不知道应该在哪切这一刀来看问题。

    作者回复: 是的,良好的设计会让测试更好写。

    
     1
  • Nemo
    2019-02-13
    能不能手把手教一下如何写一个完整,优秀的单元测试?

    作者回复: 好建议,我可以考虑加餐。

    
     1
  • 奕超
    2019-02-01
    实际情况是:很多时候,项目时间很紧,经常会提测后,再补,或者直接code review,测试就不写了;

    作者回复: 项目永远很紧,时间永远不够,你打算永远这样吗?

    
     1
  • 巫山老妖
    2019-01-27
    测试没有银弹,主要看大家对测试这件事情的认知是否一致,现在都在推崇测试左移,尽可能玩发现问题,这就对程序员提出更高的要求。

    作者回复: 优秀程序员总是少数的,会写测试就已经上了一级台阶,能在写代码之前思考测试,就会再上一级台阶。

    
     1
  • 肉墩儿快跑
    2019-01-26
    看绩效了,只要价钱足够高,就能保证了

    作者回复: 经济学告诉我们,没有足够高的价钱。

    
     1
  • 草原上的奔跑
    2019-01-26
    作为一个程序员,怎么保证自己写出来的程序是好的,答案是写测试,只有自己通过了单元测试、集成测试、系统测试,那么提测的时候我们才会有底气,而不是时刻准备着测试出问题去改。但是,很不幸的是,团队内部成员没有写测试的意识,让他们写,以不会写、时间不够为借口,就是不写,不知道郑老师对这种情况有没有好的解决办法。

    作者回复: 很多不喜欢写测试的真实原因是,不会写。他们先要知道写测试是怎么回事,可以把我这个系列学完之后,分享给他们。

    
     1
  • 刘冲
    2019-06-26
    老师,集成测试是谁来写?测试人员么
    
    
  • 鱼蛋粉
    2019-04-27
    自从知道测试人员的测试只是基于界面的点点点,之后写的每个方法都必需写单元测试。写单元测试是对自己负责。

    作者回复: 呃,这个角度好神奇,但你意识到要多写测试就好。

    
    
  • enjoylearning
    2019-03-28
    测试会提高我们的设计能力,写出clean code

    作者回复: 想写好测试,要写好代码。

    
    
  • 苦行僧
    2019-03-11
    单元测试不好写 基本可以断定业务代码和通用代码纠结在一起了 需要重构

    作者回复: 耦合是肯定的

    
    
我们在线,来聊聊吧