在Flask测试教程中,有一个特定的test,其中,客户端和应用程序的使用方式如下:
def test_login_logout(client):
"""Make sure login and logout works."""
rv = login(client, flaskr.app.config['USERNAME'], flaskr.app.config['PASSWORD'])
assert b'You were logged in' in rv.data
我想知道在这里使用client.application
而不是flaskr.app
会不会更好。还是没有什么不同?
我之所以问是因为我遵循了Flask教程,因为我在应用程序包的__init__.py
中建立了一个应用程序工厂(这在测试教程中有所不同,他们在模块级别定义了app
这里)。因此,为了类似地访问此应用程序,我将不得不做
app = flaskr.create_app()
在测试方法的最开始,然后稍后通过app.config
访问其配置。但是然后我会有2个应用程序浮动-一个可以通过client.application
访问的应用程序,以及我刚刚创建的一个应用程序-对吗?
建议始终使用client.application
吗?
N。 B.我的测试通过任何一种方式。
编辑:我不是在这里征求意见,我只是想知道使用client.application
是否有问题。因为如果没有的话,我们可以清楚地说烧瓶教程正在绕道而行(不必要地导入flaskr
,对应用程序进行两次实例化)。同样,这不是基于观点的。另一方面,如果使用client.application
时出现问题,那么我们可以明确地说,应该始终按照烧瓶教程中建议的方法进行操作。
如果关于此帖子仍然有任何观点,我将很乐意澄清。就我而言,我只是在寻求帮助。