私はフラスコプロジェクトで単体テストを準備中です。私のテストファイルは以下の通りです:フラスコのテストcreate_appはアプリケーションを返さないのですか?
import flask_testing
import unittest
from flask import Flask
from flask_testing import TestCase
class MyTest(TestCase):
def setUp(self):
pass # Executed before each test
def tearDown(self):
pass # Executed after each test
def create_app(self):
app = Flask(__name__)
# app.config['TESTING'] = True
return app
def test_greeting(self):
response = self.client.get('/')
print("should return 404 on landing page")
self.assertTemplateUsed('index.html')
self.assertEqual(response.status_code, 200)
if __name__ == '__main__':
unittest.main()
私はassertTemplateUsed
テンプレートを返さないとresponse.status_code
が404である私は、自己が実際に何らかの理由で私のアプリケーションではありませんので、これは想像これらのテストを実行すると?私は、アプリケーションを実行すると、ルートアドレスは絶対にindex.htmlを返します。
create_app
は間違っていますか?どんな助けもありがとうございます。
create_app()が確実に呼び出されています。それはFlask-Testingアプリケーションで必要です:https://pythonhosted.org/Flask-Testing/ Edit:フラスコテストを試して落として、単体テストを使用することもできます – Programmingjoe