设置覆盖率.py用flas

2024-10-04 11:31:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在努力让coverage.py使用我的烧瓶应用程序。在

{a2正在尝试通过^指令设置它

在我的create_app()函数(它是一个应用程序工厂)中,我有以下内容:

if settings.FLASK_ENV == 'TEST':
    coverage.process_startup()

在我的测试套件中,我有以下内容:

^{pr2}$

在我的测试结束时我会。。。在

    coverage.save()
    coverage.combine()
    percent_covered = coverage.html_report(directory='covhtml')
    print "Percent Covered: {}".format(percent_covered)
    coverage.stop()

但是,唉。。报道似乎没有合并

注意:在调用combine之前,如果我ls -alt我看到的目录如下所示。。。在

-rw-r--r-- .coverage.Jonathans-MacBook-Pro-3.local.49352.501916 -rw-r--r-- .coverage.Jonathans-MacBook-Pro-3.local.49352.931352

为了完整起见,我的.coveragerc只是: [run] parallel = True

希望你能指出正确的方向——谢谢!在


Tags: pyapp应用程序a2烧瓶create指令coverage
2条回答

如果你用鼻子来测试,那就很简单了。只需运行:

nosetests  with-coverage  cover-package=yourpackagename cover-html  cover-erase

多亏了@NedBat的一些指导,它才正常工作。在

问题是gunicorn产生了额外的子进程和那些没有被监控的子进程。在

为了解决这个问题,我需要利用站点模块的网站包.py特色。公平地说,这是有记载的,但我做得不对。在

您需要创建sitepackage.py文件并将其放入site-packages文件夹中。然后,在环境中运行的任何进程(或子进程)都将在启动进程之前执行该文件。在

相关问题 更多 >