大家在开发的时候都会写单元测试吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
pwstrick
V2EX    程序员

大家在开发的时候都会写单元测试吗?

  •  1
     
  •   pwstrick
    pwstrick 2018-09-28 10:05:45 +08:00 11841 次点击
    这是一个创建于 2639 天前的主题,其中的信息可能已经有所发展或是发生改变。
    70 条回复    2018-09-29 16:52:40 +08:00
    sbw
        1
    sbw  
       2018-09-28 10:17:39 +08:00
    基本素养
    TommyLemon
        2
    TommyLemon  
       2018-09-28 10:35:57 +08:00   1
    APIJSONAuto 提供了自动化接口回归测试,测试接口一行代码都不用写。
    视频演示:
    i.youku.com/apijson
    在线体验:
    apijson.cn/

    创作不易,GitHub 右上角点 Star 支持下吧,谢谢 ^_^
    github.com/TommyLemon/APIJSONAuto
    TommyLemon
        3
    TommyLemon  
       2018-09-28 10:37:22 +08:00
    @TommyLemon
    APIJSONAuto 特点功能:
    自动生成文档,清晰可读永远最新
    自动生成请求代码,支持 Android 和 iOS
    自动生成 JavaBean 文件,一键下载
    自动管理与测试接口用例,一键共享
    自动校验与格式化 JSON,支持高亮和收展

    创作不易,GitHub 右上角点 Star 支持下吧,谢谢 ^_^
    captainjack
        4
    captainjack  
       2018-09-28 10:37:50 +08:00   1
    只要时间允许,当然要写
    dengtongcai
        5
    dengtongcai  
       2018-09-28 10:42:29 +08:00 via Android
    写的不多,但是还是要写啊,代码质量保证
    liuxu
        6
    liuxu  
       2018-09-28 10:46:32 +08:00
    初版会写,后来的更改有心情才会写
        7
    zhangwugui  
       2018-09-28 11:07:50 +08:00
    会写吧,起码要简单测下,能跑通;
    dubbo 接口的话,会 专门写一个微服务,专门用于测试;
    kx5d62Jn1J9MjoXP
        8
    kx5d62Jn1J9MjoXP  
       2018-09-28 11:08:44 +08:00
    不写
    kkaka
        9
    kkaka  
       2018-09-28 11:17:13 +08:00
    迭代太快的时候 维护一套测试代码压力也非常大
    anjuyiyu
        10
    anjuyiyu  
       2018-09-28 11:34:49 +08:00
    功能一天,单元测试半天。。
    geeti
        11
    geeti  
       2018-09-28 11:58:48 +08:00
    我们公司不写单元测试都过不了编译
    每次 commit 如果超过 10 行,测试覆盖需要 85%
    Raisu
        12
    Raisu  
       2018-09-28 12:31:15 +08:00   2
    整个公司只有我一个人写,写的时候还要被 diss。。。是不是早走比较好
    wildmelon
        13
    wildmelon  
       2018-09-28 12:33:29 +08:00
    移动开发会写吗
    MetoYou
        14
    MetoYou  
       2018-09-28 12:40:56 +08:00
    时间充裕的话都会写
    Justin13
        15
    Justin13  
       2018-09-28 12:55:28 +08:00 via Android
    不写,除非 code review 强制要求。
    WispZhan
        16
    WispZhan  
       2018-09-28 13:13:17 +08:00
    考试的时候,是先打草稿做验证,还是直接在卷子上撸题?

    写代码也一样
    doyouhaobaby
        17
    doyouhaobaby  
       2018-09-28 13:19:10 +08:00   1
    提高代码质量,微重构必须,梳理思路
    https://github.com/hunzhiwange/framework/tree/master/tests
    tt67wq
        18
    tt67wq  
       2018-09-28 13:22:12 +08:00   3
    写个鸡儿,业务都写不完,我还给你写白盒?
    写白盒加工资吗?
    写白盒的时间给加班费吗?

    重构??不存在的
    把东西都切分成能重写的体量,直接拉倒重写

    代码质量???
    我代码写的稀烂不照样拿工资,出了问题往死了撸测试就行了
    tachikomachann
        19
    tachikomachann  
       2018-09-28 13:29:31 +08:00 via Android
    当项目和团队不给你时间,大家就倾向于不写单元测试了
    d18
        20
    d18  
       2018-09-28 13:48:11 +08:00
    有时间会写,如果业务都只能在 deadline 之前写完,单元测试? Who care ?
    framehouse
        21
    framehouse  
       2018-09-28 13:50:13 +08:00
    会写,不过没有追求覆盖率
    thisisgpy
        22
    thisisgpy  
       2018-09-28 13:53:16 +08:00
    照着测试给的冒烟用例写
    20015jjw
        23
    20015jjw  
       2018-09-28 14:07:06 +08:00 via Android
    能写就写
    MaxTan
        24
    MaxTan  
       2018-09-28 14:26:35 +08:00
    写,主要是方便自己调试
    rockyou12
        25
    rockyou12  
       2018-09-28 14:32:05 +08:00
    要写,写了真的测试自己写的功能很方便,不用傻傻的去写 postman
    jinwyp
        26
    jinwyp  
       2018-09-28 14:45:54 +08:00   1
    单元测试是什么? 大公司有写的吗? 什么语言? java 吗?
    lrh3321
        27
    lrh3321  
       2018-09-28 14:50:32 +08:00
    基本素养 +1
    metrue
        28
    metrue  
       2018-09-28 15:11:45 +08:00
    基本素养.
    zhangalong69
        29
    zhangalong69  
       2018-09-28 15:49:38 +08:00
    从来不写,有接口测试工具,电脑本机项目不能运行起来,只有放到服务器上跑起来
    moresteam
        30
    moresteam  
       2018-09-28 15:50:06 +08:00 via Android
    不写
    linpf
        31
    linpf  
       2018-09-28 15:54:08 +08:00
    never 小公司,写 1 个模块单元测试的时间,够开发 2 个新模块了。
    frienmo
        32
    frienmo  
       2018-09-28 16:15:52 +08:00
    0 肯定写啊
    1 可以不接锅
    2 而且方便别人看代码,知道怎么用
    3 代码量看上去多
    zhanmaozi
        33
    zhanmaozi  
       2018-09-28 16:19:04 +08:00 via iPhone
    要写
    sheny
        34
    sheny  
       2018-09-28 16:38:59 +08:00
    寻思着能行,就不写了
    v2chou
        35
    v2chou  
       2018-09-28 16:40:28 +08:00
    前端开发会写吗
    lovelybear
        36
    lovelybear  
       2018-09-28 16:48:17 +08:00
    从来不写
    lovelybear
        37
    lovelybear  
       2018-09-28 16:48:37 +08:00
    除非发布开源库的话,会写
    zgpgzhangpeng
        38
    zgpgzhangpeng  
       2018-09-28 16:53:07 +08:00
    不写,优先搞定业务
    invzhi
        39
    invzhi  
       2018-09-28 18:17:06 +08:00
    写 我觉得这个收益大于付出
    asj
        40
    asj  
       2018-09-28 18:22:38 +08:00 via iPad   2
    我对开发人员应该写测试的一点思考,请多指教
    https://www.jianshu.com/p/e12bb46962f2
    boris1993
        41
    boris1993  
       2018-09-28 18:52:03 +08:00 via Android
    自己写着玩的东西会写
    公司的?“我们没有给写单元测试的工时”
    ShareDuck
        42
    ShareDuck  
       2018-09-28 20:42:05 +08:00 via Android
    不写不行啊,试过几次不写就出 bug 了,真是邪了。
    entimm
        43
    entimm  
       2018-09-28 21:07:38 +08:00 via Android
    如果几个人一起干,没有明显的责任,去你的写个啥测试,除了问题不是我的锅。
    如果模块划分明确,那还真的要写测试,因为指不定你忍不住想去优化些老代码,就不用指望测试能帮你了,一劳永逸啊
    jimrok
        44
    jimrok  
       2018-09-28 22:02:31 +08:00
    一部分不写,一部分必须写。必须写的涉及交易,错了钱就没了,你跟我说可以不写?有多远滚多远。
    owt5008137
        45
    owt5008137  
       2018-09-28 22:09:17 +08:00 via Android
    scnace
        46
    scnace  
       2018-09-29 00:13:33 +08:00 via Android
    公司代码基本不写 自己的玩具因为没有人测试所以需要写
    taowen
        47
    taowen  
       2018-09-29 00:30:17 +08:00 via Android
    公司的代码没法写。自己的代码肯定要写。
    lsido
        48
    lsido  
       2018-09-29 00:40:21 +08:00 via Android
    单元测试是什么
    quickma
        49
    quickma  
       2018-09-29 01:26:26 +08:00
    开会的时候我会写
    msg7086
        50
    msg7086  
       2018-09-29 05:52:57 +08:00
    一般不写,主要写集成测试。
    pdog18
        51
    pdog18  
       2018-09-29 07:03:01 +08:00 via Android
    不知道 ui 效果要怎么写单元测试
    beginor
        52
    beginor  
       2018-09-29 08:05:21 +08:00 via Android
    今天这回复明显不符合 V2EX 的水平啊
    lj3lj3
        53
    lj3lj3  
       2018-09-29 08:09:13 +08:00
    对于上来要求让你一张表解决问题的公司 还会让写测试?
    limuyan44
        54
    limuyan44  
       2018-09-29 08:18:22 +08:00 via Android
    我的代码没有 bug,是你们用的姿势不对
    scarlex
        55
    scarlex  
       2018-09-29 08:34:19 +08:00
    写底层库的时候会,写业务相关的不会
    qa2080639
        56
    qa2080639  
       2018-09-29 08:43:32 +08:00
    前端要写吗, 我都是手动测 感觉自动化的测不出来
    janxin
        57
    janxin  
       2018-09-29 08:45:52 +08:00   1
    @beginor 这才是真实水平 XD
    Aprilming
        58
    Aprilming  
       2018-09-29 08:55:14 +08:00
    没写过,小公司,需求写完自己测测没问题就提交上去,有问题就等测试提 bug。
    zhangyichent
        59
    zhangyichent  
       2018-09-29 09:22:48 +08:00
    以前肯定要写。。不止单元测试用例,还有功能测试用例,系统测试用例。。。。现在在小公司,就写写 python 脚本。。好像用不着写了
    zpf124
        60
    zpf124  
       2018-09-29 09:24:45 +08:00
    大公司的下属小部门,没有人带,如何写单元测试都不知道...
    tengqingshan
        61
    tengqingshan  
       2018-09-29 09:48:08 +08:00
    不写单测怎么敢上线?不怕出线上 bug 么
    zongren
        62
    zongren  
       2018-09-29 09:52:36 +08:00
    我觉得很有用,所以会写
    另外 2 楼所谓接口测试跟单元测试没有关系
    另外测出 bug 后要添加对应的单元测试覆盖这个 bug
    followyourheart
        63
    followyourheart  
       2018-09-29 09:52:37 +08:00
    以前不会 现在会
    houshengzi
        64
    houshengzi  
       2018-09-29 09:52:47 +08:00
    大公司的下属小部门,没有人带,如何写单元测试都不知道... +1

    并且架构很乱,想写也无从下手
    jiangbingo
        65
    jiangbingo  
       2018-09-29 10:17:22 +08:00
    大厂 coding 都有 TDD 的惯例。第一次接触 DOJO 训练的时候惊奇了很一阵子。
    cstj0505
        66
    cstj0505  
       2018-09-29 10:28:26 +08:00
    @beginor 打嘴仗,吹那个语言框架厉害的时候一看 V2EX 个个都是大牛。
    但问道这种基本素养,一副我最牛逼,我干嘛要这么做,信我就好。
    估计也是国内圈子的氛围。
    hnyoumfk
        67
    hnyoumfk  
       2018-09-29 10:37:47 +08:00
    曾经试着记录自己在开发和改 bug 所花费的时间,后来发现写单元测试之后明显减少修改 bug 的时间(目前开发后端),总的时间算起来基本一样,所以觉得写测试并不亏。
    不过之前写 Android 的时候,觉得写界面相关的测试实在是反人类以及难以跟着迭代维护。
    所以,具体还是看项目啦,只要时间花费值得
    smilepig
        68
    smilepig  
       2018-09-29 10:41:30 +08:00
    会写 mapper 测试和接口测试
    fundebug
        69
    fundebug  
       2018-09-29 14:54:57 +08:00   1
    单元测试还是很有必要的,建议多写:

    - 验证代码的正确性
    - 验证边界条件
    - 避免 BUG 复现
    - 避免修改代码时出错
    - 避免其他团队成员修改代码时出错
    - 便于自动化测试与部署

    https://blog.fundebug.com/2017/12/20/rethinking-unit-test/
    aaron61
        70
    aaron61  
       2018-09-29 16:52:40 +08:00 via Android
    写作业的时候写
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2183 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 31ms UTC 00:35 PVG 08:35 LAX 16:35 JFK 19:35
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86