Python 将所有方法导入unittest文件
我试图找出为文件解析器编写单元测试的最佳结构。我的Python 将所有方法导入unittest文件,python,unit-testing,parsing,Python,Unit Testing,Parsing,我试图找出为文件解析器编写单元测试的最佳结构。我的parser.py文件如下所示: import re import sys import glob from datetime import datetime import csv def main(): # does something def normalizeGender(gender): # does something def normalizeDate(date): # does something de
parser.py
文件如下所示:
import re
import sys
import glob
from datetime import datetime
import csv
def main():
# does something
def normalizeGender(gender):
# does something
def normalizeDate(date):
# does something
def parseLine(record, delimiter):
# does something
def formatRecords(record_list):
# does something
import unittest
class ParserTest(unittest.TestCase):
# Returns True or False.
def test(self):
self.assertTrue(True)
if __name__ == '__main__':
unittest.main()
等等
我有tests
dir,在parser\u test.py
文件中,看起来像这样:
import re
import sys
import glob
from datetime import datetime
import csv
def main():
# does something
def normalizeGender(gender):
# does something
def normalizeDate(date):
# does something
def parseLine(record, delimiter):
# does something
def formatRecords(record_list):
# does something
import unittest
class ParserTest(unittest.TestCase):
# Returns True or False.
def test(self):
self.assertTrue(True)
if __name__ == '__main__':
unittest.main()
现在,如果我想测试解析器中的所有方法,是否应该一次导入它们?有些东西告诉我,它们应该包装成某种模块 以下答案基于我的工具偏好和我通常遵循的实践:
test\u normalizeGender
,test\u normalizeDate
,test\u normalizeDate
,test\u parseLine
,test\u formatRecords
。但是,如果您的代码中有带有多个分支的if语句,请确保尝试涵盖这些分支的可能情况。此外,如果您有for循环,我将实现对无元素、一个元素和多个元素的测试我希望这有帮助。
parser\u test.py
应该只使用import parser
。那么,问题是如何让您的测试运行人员知道如何查看parser.py
所在的目录。@user7496931,您的问题的答案可能主要基于观点