Python unittest:tearDownClass删除文件

时间:2016-10-18 18:08:06

标签: python python-unittest teardown

我有单元测试类,我有测试方法。现在进入方法我暂时创建一个文件来与模块内部的静态文件进行比较。运行测试后,我想删除该文件

现在在setUp方法中,我定义了属性:

self.dir_path

显示文件目录的路径。所以要获取文件,我可以简单地写一下:

'%s/some_file.xls' % self.dir_path

现在删除它,我会做类似的事情:

os.remove(`%s/some_file.xls` % self.dir_path)

但是tearDownClass是一种类方法,它不会看到self.dir_path。如果我使用内部tearDown方法,那么它将尝试在每次测试后删除该文件(该文件仅在其中一种测试方法中创建),这将失败。

那么这种情况的最佳选择是什么?我应该在创建它的测试方法中删除该文件吗?我想利用拆解方法的功能就是为了做到这一点,但似乎我做不到。

或许还有一些更好的方法可以暂时创建一个文件,然后在测试后将其删除?

请注意。我需要创建该文件,因为我正在测试以excel格式生成的报告,并且文件是使用一个库生成的,但生成的内容会与另一个(xlwt进行创建,xlrd进行比较以进行比较使用静态excel文件的结果。)

0 个答案:

没有答案