[英]Python - Testing class methods with unittest
我有一個Scheduler
類和一個使用unittest為__generate_potential_weeks
編寫的測試
class Scheduler:
def __init__(self, num_teams, num_weeks):
self.potential_weeks = self.__generate_potential_weeks(num_teams)
# Other stuff
def __generate_potential_weeks(self, num_teams):
# Does some things
import unittest
from main import Scheduler
class SchedulerTestCase(unittest.TestCase):
def test_generate_weeks(self):
sch = Scheduler(4, 14)
weeks = sch.__generate_potential_weeks(4)
當我嘗試測試__generate_potential_weeks
,出現以下錯誤
AttributeError: 'Scheduler' object has no attribute '_SchedulerTestCase__generate_potential_weeks'
__generate_potential_weeks
__generate_potential_weeks
? 它具有一些復雜的邏輯,我想與Scheduler
分開進行測試 雙下划線在python中具有特殊含義。 該名稱將被修改以避免子類中的名稱沖突。
如果這不是您的意圖,我鼓勵您在單個下划線處進行標記。 如果是這樣,您仍然可以使用變形的名稱來訪問該函數。 我認為這對您sch._Scheduler__generate_potential_weeks(4)
: sch._Scheduler__generate_potential_weeks(4)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.