【发布时间】:2013-04-21 07:05:12
【问题描述】:
我正在尝试 TDD 和单元测试,但从未真正认真地做过。
我有一个从程序输出的 XML 文件。我想将其转换为 JSON。 我找到了xmltodict,所以我想做的是:
def to_json(filename):
with open(filename) as f:
xml_ = f.read()
dict_ = xmltodict.parse(xml_)
json_ = json.dumps(dict_)
return json_
我将如何测试这个?我应该把它分成 3 个功能并分别测试吗?我应该对错误的文件名进行“防御性”编码吗? parse 和 dumps 方法抛出的错误呢?
最后,有没有很好的参考资料/书籍/博客文章讨论这类事情?我知道我应该进行单元测试并且非常喜欢 TDD 的想法,但实际上我不知道自己在做什么。
【问题讨论】:
-
我将打开文件与转换为 json 分开。测试代码会更容易。
-
加上您的代码已经编写好了,TDD 以另一种方式工作 - 首先您编写测试,然后在尝试通过测试时编写代码。
-
我试过了,但我什至不确定那些初始测试会是什么样子。
标签: python unit-testing tdd