我有一个小型命令行应用程序(大约 6k 行)。它没有单元测试,因为我不知道如何编写它们;但我现在追溯添加一些。我阅读了本教程,但对如何使用此模块测试整个应用程序感到困惑;事实上,我什至不确定我想做的是否称为“单元测试”。
具体来说,如果我使用某些参数运行我的应用程序,它应该会生成某些输出文件。我想确保那些输出文件没有改变。
即,我的应用程序的以下命令行调用:
main.py config1.txt 100 15
main.py config2.txt def 10 qa
etc.....
创建一些小的输出文本文件(每个小于 10 MB)并将它们放入单独的文件夹中(每个调用一个),命名如下:
output/config1.100.15.201202011733/
output/config2.def.10.qa.201202011733/
etc...
每个文件夹包含几个小文本文件(每个<10MB)。在每次代码更改迭代之后,我想使用几十个命令行参数运行我的应用程序,并注意输出文件不同的任何情况。(理想情况下,我想做更多的事情;例如,对于某些输出文件,将它们作为具有特定主键的制表符分隔表进行比较,这样如果行顺序发生更改,它们仍然会评估为相等;但这不是批判的)。
设置这个的好方法是什么?