やったこと
ユニットテストの勉強中です。エラーが出たコードを削っていったところ、以下のような状態になりました。
python3
1import unittest 2 3class Test_class(unittest.TestCase): 4 5 def __init__(self): 6 pass 7 8 def test_vals(self): 9 pass 10 11 12if __name__ == '__main__': 13 unittest.main()
結果
> TypeError: __init__() takes 1 positional argument but 2 were given
このエラーは、test_vals()の名前をtest以外から始まるものに変更すると出なくなります
---------------------------------------------------------------------- Ran 0 tests in 0.000s OK
が、もちろんテストは走りません。
聞きたいこと
- なぜ
TypeErrorが__init__()に対して出るのか。 - エラーメッセージの
1や2とは何のことを指しているのか。1はselfだと推測しますが、2がどうしても理解できません・・・。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
2018/11/14 09:42
2018/11/14 09:53