我即将开始我的第一个TDD(测试驱动开发)程序,我(自然)有一个TDD心理障碍.我想知道有人可以帮助我指导我应该开始一些.
我正在创建一个函数,它将从套接字读取二进制数据并将其数据解析为一个类对象.
据我所见,有3部分:
1)解析数据的逻辑
2)socket类
3)类对象
我应该采取哪些步骤,以便我可以逐步推广TDD?我绝对打算在甚至实施该功能之前首先写测试.
TDD中的问题是“可测试性的设计”
原文链接:https://www.f2er.com/javaschema/281388.html首先,你必须有一个接口来编写测试.
要到达那里,你必须大概了解你的可测试单位是什么.
一些类是由一个函数构建的.
>一些功能,从套接字读取并发出一个类.
第二,给定这个粗略的界面,您将其形式化为实际的非工作类和函数定义.
第三,你开始写你的测试 – 知道他们会编译但失败.
通过这一点,您可能会开始关注您的功能.如何为您的功能设置套接字?这是一个痛苦的脖子.
但是,你上面介绍的界面不是法律,只是一个好主意.如果您的函数使用了一个字节数组并创建了一个类对象,该怎么办?这很容易测试.
所以,重新阅读步骤,更改界面,编写非工作类和函数,现在编写测试.
现在您可以填写课程和功能,直到您的所有测试通过.
当你完成了这一点测试之后,你所要做的就是挂在一个真正的socket中.你信任套接字库吗? (提示:你应该)在这里测试不多如果您不信任套接字库,现在您必须提供可以以受控方式运行的数据的源.这是一个很大的痛苦.