之前学习 cs61b,在 labs 里接触了 TDD 的概念。最近自己完成一个 Assignment,尝试了一下 TDD,写测试点用时比项目本身还长。想请教各位,是如何看待和实践 TDD 的?
用户量大,价值高,对安全性要求高的程序当然需要大量的测试。自己的小项目可能就不需要花这么多精力了,或者让 AI 写测试。CS61B 作为教学内容,培养学生正确的习惯当然是非常好的,很多人没有这些意识,尽管简单但在某些场景下就非常重要。
2 Likes
经常写程序的人会非常有意识地去考虑 corner case 是否被 cover,这类训练还是非常必须的
2 Likes
TDD 的哲学是“先写清楚程序的输入和输出,之后再写程序本身”。
所以我觉得输入和输出以 text 的格式给 ai 让它写测试用例就很好:)
2 Likes
感谢回答,很有帮助
这个方法很有启发性!把结果抽象成文本,然后让 AI 生成,我会试试。