クラス内で提供されているユニットテストから1つのテストだけを実行しようとしています。だから仮定するpythonで特定のユニットテストをmain()から実行します
class MytestSuite(unittest.TestCase):
def test_false(self):
a = False
self.assertFalse(a, "Its false")
def test_true(self):
a = True
self.assertTrue(a, "Its true")
私はtest_falseを実行したいと思います。 Q & Aは、このサイトで提供し、オンライン、私は私のメインクラスで
if __name__ == "__main__": #Indentation was wronng
singletest = unittest.TestSuite()
singletest.addTest(MytestSuite().test_false)
unittest.TextTestRunner().run(singletest)
を次のコード行を使用に基づいて、私は、テストを追加しようとしたときにエラーを得続けます。主に:
File "C:\Python27\Lib\unittest\case.py", line 189, in __init__
(self.__class__, methodName))
ValueError: no such test method in <class '__main__.MytestSuite'>: runTest
私のクラスには特定のrunTestメソッドが必要ですか?異なるスイートに属する特定のテストを実行する方法はありますか?例えば:方法スイートクラス2に属するスイートクラス1と方法Bに属する。意外にも、これはオンラインで見つけるのが難しいことであることが判明しています。コマンドラインで実行する例は複数ありますが、プログラム自体ではありません。いつものように、どんな助けもありがとう。
私はちょうどインデントを編集しようとしていましたが、それは私を打ちました。 'class MytestSuite'のインデントをチェックしましたか?関数がインデントされていない限り、空のクラスのように見えます。 – noumenal
インデントして申し訳ありません。私は自分のプログラムで正しくインデントしています。私はちょうど私がかなりの間、サイトを使用しているにもかかわらずStackOverflowでそれを働かせることができませんでした:) – Fizi
4スペースはそれを行います:-) – noumenal