Flask Web 开发 15章 测试 代码覆盖度报告

在Flask Web开发中,通过`flask test --coverage`命令执行测试时遇到错误,因为`sys.argv`的第一个参数在系统中未找到。解决办法是在参数末尾添加`.exe`,使命令正确执行。
摘要由CSDN通过智能技术生成

先上代码

import os
import sys
import click
from app import create_app, db
from app.models import User, Role, Permission, Follow, Post, Comment
from flask_migrate import Migrate


COV = None
if os.environ.get("FLASK_COVERAGE"):
    import coverage
    COV = coverage.coverage(branch=True, include="app/*")
    COV.start()


app = create_app("default")
migrate = Migrate(app, db)



@app.cli.command()
@click.option("--coverage/--no-coverage", default=False, help="Run tests under code coverage")
def test(coverage):
    """Run the unit tests."""
    if coverage and not os.environ.get("FLASK_COVERAGE"):
        os.environ["FLASK_COVERAGE"] = "1"
        os.execvp(sys.executable, [sys.executable]+sys.argv)
    import unittest
    tests = unittest.TestLoader().discover("tests")
    unittest.TextTestR
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值