私はPython 2.7を使い、TDDに掘り下げています。私は、csvモジュールを使用してcsv.readerオブジェクトを返す単純な関数をテストしようとしています。私は正しいタイプのオブジェクトがassertIsInstanceテストで返されていることをテストしたいと思いますが、この作業を行う方法を理解するのに問題があります。関数がcsv.readerオブジェクトを返すかどうかをテストするためにpython unittestを取得するにはどうすればよいですか?
#!/usr/bin/python
import os, csv
def importCSV(fileName):
'''importCSV brings in the CSV transaction file to be analyzed'''
try:
if not(os.path.exists("data")):
os.makedirs("data")
except(IOError):
return "Couldn't create data directory!"
try:
fileFullName = os.path.join("data", fileName)
return csv.reader(file(fileFullName))
except(IOError):
return "File not found!"
テストは現在、このようになります....私は本当にSTRとタイプ機能で「つま先」をラップするとは思わない
#!/usr/bin/python
from finaImport import finaImport
import unittest, os, csv
class testImport(unittest.TestCase):
'''Tests for importing a CSV file'''
def testImportCSV(self):
''' Test a good file and make sure importCSV returns a csv reader object '''
readerObject = finaImport.importCSV("toe")
self.assertTrue(str(type(readerObject))), "_csv.reader")
は正しいです。私は何かなどをしようとすると...
self.assertIsInstance(finaImport.importCSV("toe"), csv.reader)
それは...のような
TypeError: isinstance() arg2 must be a class, type, or tuple of classes and types
ヘルプをエラーを返します?