关于写接口方法时为何需要先写测试用例的一些体悟

本文讲述了作者在学习软件构造课程中体会到的先写测试用例再编写程序代码的好处。通过实践,作者发现这种方法能及时发现和修复bug,避免错误交织,且能更好地遵循规格说明。此外,预先编写测试用例也有助于完善规格说明。作者决定在今后的编程工作中坚持这一习惯。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        在过去的算法竞赛以及各种码代码的经历中,如果遇到需要编写测试用例进行调试的情况,自己往往是先完成程序代码的编写,再简单地写几个测试用例进行测试一下。在接触软件构造这门课之前,我一直认为这并不是错误的。

        是故,在课程上被要求先编写测试用例再编写程序代码时,我感到十分的不解,我完全想不到这么做的任何理由。但是看着老师反复强调这一点的样子,我也是打算在之后的码代码过程中尝试一下这种写法,来看看到底这么做有什么好处。

        其实在最初的写项目的过程中(Lab1),我并没有感觉到先写测试用例所带来的好处,其给我带来的感觉与先完成代码再编写测试用例一样。但这是因为Lab1的项目其实不会出太多意想不到的错误,其代码结构较为简单。

        当写到Lab2的时候,我依旧尝试先写RI、AF以及各种规约,再完成测试用例与checkrep的编写。在接下来完善方法的过程中,出现了各种各样的情况:完成了一个方法后检查写法没有问题,运行测试用例却报错;或者原先正确的方法在更改了其他调用方法后,运行测试样例却出错了;或者是运行过程中checkrep报错了等。这每一个错误都是原先隐藏在代码中的一个个bug,可能这些bug一开始不会显露出来,而当其他方法逐渐完善后,或者修改了一些原来的方法后,这些bug就会导致各式各样的错误出现。

        因此,提前写好测试用例与checkrep等代码有如下优点:

        1.能够随时测试方法。每完成一个方法,或者对一个方法做出任何改动后,可以立刻进行测试,也可以及时发现bug,而不需要在写完所有的方法之后,当所有的bug混杂在一起后再去一个个解开bug(往往那时候bug会像毛线团一样缠在一起)。

        2.自我感觉如果在写完程序代码之后再写测试用例,会在无意识中按照自己程序代码的写法去写测试用例(而不是根据spec),可能会在潜意识中规避一些可能会导致bug的测试。而若提前写测试用例,则会完全按照spec来设计,能够更准确地发现代码中的bug。

        3.在完成spec后实现代码之前完成测试用例的编写,能够帮助你完善spec的内容。(6.11补充)

        更多的优点待日后有其他感受再来补充。

        因此在日后的编程中,自己也会坚持先写测试用例再写代码的习惯,相信这会使我受益良多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值