无法导入烧瓶应用

时间:2018-08-20 10:19:06

标签: python flask python-unittest

我有这样的结构:

<Span Text="{Binding Text}" ForegroundColor="Fuchsia"/> 

init .py中:

flask_api
    api
        __init__.py
        tests
            test_base.py
    manage.py

在manager.py中:

def create_app():
    connexion_app = connexion.App(__name__, specification_dir='swagger/')
    connexion_app.add_api('output.yaml', resolver=RestyResolver('api'),  validate_responses=True)
    app = connexion_app.app

    CORS(app)
    app.register_blueprint(utils)
    ...
    return app

并在test_base.py中:

from api import create_app

app = create_app()
manager = Manager(app)

@manager.command
def test():
    print(app.root_path)
    tests = unittest.TestLoader().discover(
        'api/tests',
        pattern='test*.py'
    )
    result = unittest.TextTestRunner(verbosity=2).run(tests)
    if result.wasSuccessful():
        return 0
    return 1
if __name__ == '__main__':
    manager.run()

现在,当我运行python menage.py测试时,我得到了错误:

from flask_api import app

如何将应用程序导入test_base?

1 个答案:

答案 0 :(得分:0)

在测试中,再次从api import create_app导入,然后在其中创建新的应用程序实例。

那么简单:

from api import create_app

毕竟,为简单起见,您可以分配self.app = create_app()