アプリケーションのファイルを/Filesフォルダーの下に置き、テストユニットを/ UnitTestsに置きたいので、アプリとテストを明確に分離しました。
mainApp.pyと同じモジュールルートを使用できるようにするために、ルートフォルダーにtestController.pyを作成しました。
mainApp.py
testController.py
Files
|__init__.py
|Controllers
| blabla.py
| ...
UnitTests
|__init__.py
|test_something.py
したがって、test_something.pyで、/ Files / Controllers / blabla.pyにある1つの関数をテストしたい場合は、次のことを試してください。
import unittest
import Files.Controllers.blabla as blabla
class TestMyUnit(unittest.TestCase):
def test_stupid(self):
self.assertTrue(blabla.some_function())
if __name__ == '__main__':
unittest.main()
次に、ファイルtestController.pyから、次のコードを実行します。
import TestUnits.test_something as my_test
my_test.unittest.main()
失敗は出力されませんが、テストは実行されません
----------------------------------------------------------------------
Ran 0 tests in 0.000s
OK
[Finished in 0.3s]
依存関係のないテストを試しましたが、「main」として実行すると機能しますが、外部から呼び出された場合は同じように出力されます。
import unittest
def tested_unit():
return True
class TestMyUnit(unittest.TestCase):
def test_stupid(self):
self.assertTrue(tested_unit())
if __name__ == '__main__':
unittest.main()
質問:これを機能させるにはどうすればよいですか?