Я новичок в модульных тестах для своих собственных проектов, так что это моя первая попытка написать единичный тест с нуля. Я использую python и модуль unittest. Класс TodoList, тестируемый здесь, является оберткой для фактических списков, с несколькими дополнительными методами для таких вещей, как сохранение на диск. Он также определяет несколько способов получения элементов по их идентификатору в списке (который не совпадает с индексом списка).Действительно ли я выполняю эти модульные тесты?
тесты (я вырезал несколько вспомогательных методов, а также хорошие несколько тестов ради, не имея людей прокручивать навсегда):
class TodoListTests(unittest.TestCase):
def setUp(self):
self.testdata = open("./testdata.json", "r")
self.testdata_text = self.testdata.read()
self.testdata.close()
def tearDown(self):
try:
os.remove("./todo.json")
except OSError:
# File not created, no need to delete.
pass
def create_todolist_and_safe_list(self):
self.create_data_file()
self.todolist = todolist.TodoList("./todo.json")
self.list = json.loads(self.testdata_text)
def create_data_file(self):
datafile = open("./todo.json", "w")
datafile.write(self.testdata_text)
datafile.close()
# Snip out a few more helper methods
def test_loop(self):
self.create_todolist_and_safe_list()
test_list = []
for item in self.todolist:
test_list.append(item)
self.assertEquals(test_list, self.list)
def test_save(self):
self.create_todolist_and_safe_list()
self.todolist.save()
newfile_text = self.get_data_file_as_string()
self.assertEquals(newfile_text, self.testdata_text)
# Snip out the rest of the tests.