【发布时间】:2019-11-10 23:04:10
【问题描述】:
为我的烧瓶应用程序编写一些单元测试。当我在邮递员中尝试时,端点'/'有效并返回 200,但是 flask_testing 给出AssertionError: 404 != 200
我已经设置了一个基本配置。
class BaseTestCase(TestCase):
def create_app(self):
app = Flask(__name__)
app.config['TESTING'] = True
app.config['SQLALCHEMY_DATABASE_URI'] = "sqlite:///:memory:"
app.config['JWT_SECRET_KEY'] = environ['JWT_SECRET_KEY']
db = SQLAlchemy(app)
db.init_app(app)
return app
这是测试。
class FlaskTestCase(BaseTestCase):
def test_root(self):
response = self.client.get('/')
self.assertEquals(response.status_code, 200)
测试输出
======================================================================
FAIL: test_root (test.server-test.FlaskTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/my_name/path/to/my_project/test/server-test.py", line 13, in test_root
self.assertEquals(response.status_code, 200)
AssertionError: 404 != 200
----------------------------------------------------------------------
Ran 1 test in 0.032s
FAILED (failures=1)
【问题讨论】:
-
路由添加在哪里?
-
他们在 src/server.py
-
它们是否被添加到您的测试文件中?
-
我不确定如何添加它们。如果我在这里查看此示例github.com/realpython/discover-flask/blob/master/tests/…,则未明确导入测试对象。
-
我只能通过查看应用程序结构和代码来帮助您。根据给定的信息,我认为您的测试代码中没有添加路由。
标签: python-3.x flask python-unittest flask-testing