2016-02-25 2 views
0

Я новичок в модульном тестировании. Тем не менее, мне нужно сделать тест для функции ниже. Я проделал некоторое чтение, но не могу получить от чтения. Это то, с чем я смог приехать, но я, конечно, знаю, что есть еще что делать. Может ли кто-нибудь сказать мне, что мне нужно делать дальше.Модуль-тестирование функции

def apply_filter(x): 
    filterer = { 
     1: 'ether proto 0x88B8', 
     2: 'tcp port 102', 
     3: 'ether proto 0x88BA' 
    } 
    return filterer.get(x, '') 



import unittest 

from new_format import apply_filter 


class test_apply_filter(unittest.TestCase): 

    def setUp(self): 
     pass 
    def tearDown(self): 
     pass 

    def test_filter_by_name(self): 
     self.assertEqual(apply_filter(1),"ether proto 0x88B8") 
     self.assertEqual(apply_filter(2),"tcp port 102") 
     self.assertEqual(apply_filter(3),"ether proto 0x88BA") 

if __name__ == '__main__': 
    unittest.main() 
+3

Это хороший старт .. запустить его и посмотреть .. Следующий шаг, чтобы добавить крайние случаи - как 'apply_filter (None)', 'apply_filter (4) ', ... – karthikr

ответ

0

Хороший способ писать юнит-тесты, чтобы написать тест, прежде чем писать код, то вы пишете код, чтобы сделать тест зеленеть, то очистить свой код. Это вызов TDD, основанный на тестах.

Вы можете узнать больше о TDD здесь: wikipedia

+0

Хорошо, я проверю, что вы знаете какие-нибудь книги или сайты, которые можно читать @MaximeTurcotte – Clivus

+0

Да, вы можете прочитать« Чистый код »Роберта К. Мартина. Этот парень - гуру для многих людей, когда дело доходит до написания качественного кода. Он расскажет вам об модульном тестировании с TDD и о том, как писать чистый код. –

+0

Хорошо, есть ли какие-нибудь видео, которые хороши на youtube @MaximeTurcotte – Clivus

Смежные вопросы