我正在考虑将 MD5 实现为代码 kata,并希望使用 BDD 来驱动设计(我是 BDD 新手)。
但是,我能想到的唯一测试是传入一个空字符串,最简单的方法是将哈希嵌入到我的程序中并返回它。
这样做的逻辑扩展是,我最终将哈希嵌入到我的解决方案中,用于每个测试并打开输入以决定返回什么。这当然不会产生一个有效的 MD5 程序。
我的困难之一是应该只有一个公共功能:
public static string MD5(input byte[])
而且我看不到如何测试内部结构。
我的方法完全有缺陷还是 MD5 不适合 BDD?