这是我的代码:

import unittest

from sallad.Puppgift import Kundenssallad

class Test_kundenssallad(unittest.TestCase):

    def test_av_objekt(self):
        namn = "Grekisksallad"
        slutpris = 60
        tillval = "gurka"
        kundenssallad = Kundenssallad(namn, slutpris, tillval)
        self.assertIsInstance(kundenssallad, Kundenssallad)
        self.assertEqual(kundenssallad.slutpris, 60)
        self.assertEqual(kundenssallad.tillval, "gurka")

if __name__ == "__main__":
    unittest.main()


在PyCharm中运行此代码后,我得到:

Testing started at 11:32 ...

Process finished with exit code 0


我希望程序可以打印如下内容:

...
----------------------------------------------------------------------
Ran 3 tests in 0.000s

OK


为什么测试似乎没有执行?

最佳答案

您尚未告诉unittest运行什么测试套件。
pycharm与if name ==“ main”不匹配?
尝试添加一些调试和打印名称。

运行这样的事情:

if __name__ == "__main__":
    unittest.main()
    suite = unittest.TestLoader().loadTestsFromTestCase(Test_kundenssallad)
    unittest.TextTestRunner(verbosity=2).run(suite)

10-01 08:12