【发布时间】:2017-11-10 19:49:58
【问题描述】:
当我使用 Python 3.6 编写函数和类时,我会尝试尽快编写单元测试。我正在编写一个简单的函数来测试文件是否存在于用户指定的位置,如下所示:
import os
import sys
import unittest
def verify_file_existance(file_path, file_name):
total_name = file_path + file_name
if os.path.isfile(total_name):
return
sys.exit('{}{}{}'.format('FATAL ERROR: ', file_name, 'does not exist'))
上述函数的单元测试如下
class InputFileTest(unites.TestCase):
def test_verify_file_existance(self):
file_name = 'Test.csv'
file_path = '../../Data/VandV/Input_Reader/'
verify_file_existance(file_path, file_name)
如果文件存在于所需位置,则测试成功;但是,如果该文件不存在,则程序会以 致命警告 退出。这就是我希望程序在正常运行期间的行为方式;但是,在单元测试中,我希望能够有目的地放置不正确的路径并将其注册为成功的测试,以证明程序可以满足我的要求。换句话说,在一个测试用例中,我不希望程序退出。在单元测试期间有没有办法做到这一点?
【问题讨论】:
-
你看过
assertRaises吗?
标签: python python-3.x