2016-02-25 172 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(無)','apply_filter(4 )',... – karthikr

回答

0

編寫單元測試的一個好方法是編寫代碼之前,那麼你寫的代碼,使測試變成綠色,然後你清理你的代碼編寫測試。這就是TDD,測試驅動開發。

您可以瞭解更多關於TDD這裏:wikipedia

+0

好吧,我會檢查你知道任何書籍或網站好讀@MaximeTurcotte – Clivus

+0

是的,你可以閱讀羅伯特C.馬丁清潔代碼。在編寫高質量的代碼時,這個人對於很多人來說是一位大師。它會告訴你關於TDD的單元測試以及如何編寫乾淨的代碼。 –

+0

好的,YouTube上有很好的視頻@MaximeTurcotte – Clivus