突然想到,测试驱动开发是不是有一个用处是「不想写代码的时候可以先把结构打好」 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
netabare
V2EX    程序员

突然想到,测试驱动开发是不是有一个用处是「不想写代码的时候可以先把结构打好」

  •  
  •   netabare 298 天前 3111 次点击
    这是一个创建于 298 天前的主题,其中的信息可能已经有所发展或是发生改变。
    因为测试相对来说会比较机械化,简单一点,比较适合不想写代码的时候维持低程度的日常输出。但同时测试用例又可以让对代码的理解程度不至于过于生疏。

    (只是一个想法而已,因为最近确实感觉不太想写东西,就在想是不是可以通过写测试来绕过这个低谷期)
    16 条回复    2025-02-05 18:55:09 +08:00
    kikoroc
        1
    kikoroc  
       298 天前 via iPhone
    是的,可以把逻辑在脑子里过一遍
    dawn009
        2
    dawn009  
       298 天前
    值得尝试
    securityCoding
        3
    securityCoding  
       298 天前 via Android
    恭喜你抓到了本质
    sillydaddy
        4
    sillydaddy  
       298 天前
    不错的想法。好像除了写测试用例稍微轻松点,程序员平时的工作就都是耗费脑力的编码了。
    hellohido
        5
    hellohido  
       298 天前
    是这个意思呢。
    mobpsycho100
        6
    mobpsycho100  
       298 天前
    还有一个用处是测试可以拿给 LLM 生成代码. 不过很多时候其实在代码写出来之前谁也不知道结果应该长什么样.
    SenseHu
        7
    SenseHu  
       298 天前
    无法自动化测试的架子,不是好架子
    kenshinhu
        8
    kenshinhu  
       298 天前
    测试驱动开发可否快得过产品经理的变化?
    liununu
        9
    liununu  
       298 天前 via iPhone
    之前想到过一个比喻,就是小时候玩过的数字连点画
    zhouyin
        10
    zhouyin  
       298 天前
    天下还有喜欢测试的 双倍的工作量
    guiyumin
        11
    guiyumin  
       298 天前
    我遇到的代码分为三类:

    1. infra 代码,这个要求稳定性,测试必须 100%覆盖,而且除了 unit test ,还要有各种其他测试来保证代码的可靠性
    2. 业务代码,这个就很扯淡了,有一些业务代码是很稳定的,有些业务则经常变,所以这里的测试,其实就是见仁见智,但为了让你不要半夜被吵醒修 bug ,我觉得还是多一些测试比较好,不一定是 unit test ,而是让你能感到放心的测试
    3. 一次性代码,这个就是图快,所以没有测试很正常,但你自己得看一下,当然了,这些代码通常也不重要
    netabare
        12
    netabare  
    OP
       297 天前 via iPhone
    @SenseHu 这玩意本身也是很模版化的吧,自动化本身倒也没多难

    @sillydaddy 确实是这样

    @kenshinhu 我自己的项目里面就没什么产品经理可言了…话说过来哪怕生产项目,也总有相对稳定可以提出来测试的部分吧?

    @zhouyin 并不会,就像上面有个评论说的,测试本身都是自动化的。我想说的「写测试」更多是说一些测试用例或者构想可能的使用场景,这些东西算是我可以比较容易地去想很多的东西(不写代码的前提下)

    @guiyumin 认同,三类代码的划分法也基本上是我的思路
    Salticey
        13
    Salticey  
       297 天前
    之前有读过一本书就是《测试驱动开发》,不过没细读,不知现在这个理念是否有过时之嫌?
    CassianVale
        14
    CassianVale  
       296 天前
    什么是测试驱动开发
    soya2
        15
    soya2  
       296 天前
    先写测试用例再写实现能保证健壮性,但在商业上成本略高了,尤其是快速迭代的产品,后期也许维护测试用例的时间远远大于开发的时间,老板一般不会接受
    jetflyL
        16
    jetflyL  
       296 天前 via Android
    写了接口和测试调用断言,运行失败的,后面要做的就是填代码让测试通过
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2788 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 11:04 PVG 19:04 LAX 03:04 JFK 06:04
    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