[英]How do I approach this python test?
我在 class 中有一個 function ,它調用其他函數並執行一些操作,直到它獲得兩個變量A和B :
Class NumberLogic:
def compare():
#do stuff_
A=#do stuff__
B=#do stuff___
if A<B:
return 1
else:
return 2
我想測試這個 function compare() 但直接從 A 和 B 給出值,所以只測試 if 條件,我不確定這是否可行並且代碼的 rest 可以被模擬,所以當我調用類似
assert 1 == NumberLogic.compare()
你可以像這樣重寫你的代碼:
Class NumberLogic:
def compare(self):
A = self._get_A()
B = self._get_B()
return self._compare(A, B)
def _get_A(self):
# do stuff
return A
def _get_B(self):
# do stuff
return B
def _compare(self, A, B):
if A<B:
return 1
else:
return 2
這樣,您可以編寫代碼以僅檢查_compare
注意:使用下划線開始 function 表示它是僅由 function 本身使用的內部方法。
你也可以寫:
def _compare(self, A, B):
if A<B:
return 1
return 2
這是同一件事
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.