【问题标题】:Why would autocommit in django 1.4 slow down unit tests?为什么 django 1.4 中的自动提交会减慢单元测试的速度?
【发布时间】:2019-10-09 23:04:12
【问题描述】:

Django 1.4 默认情况下会关闭数据库级别的自动提交设置。我最近尝试打开此设置,它大大减慢了我的测试套件。

DATABASES['default']['OPTIONS'].update({'autocommit': True})

我的理解是,现在每次调用createsave 等默认情况下都会打开一个事务并发出一个提交语句。所有这些额外事务的成本是否足以解释单元测试的放缓? django TestCase 事务行为如何参与其中(在事务中操作每个测试并在完成后回滚)?我们是否应该期望单元测试中的性能下降反映生产中视图的性能?

【问题讨论】:

    标签: python django database postgresql unit-testing


    【解决方案1】:

    单元测试速度变慢是由于打开和提交与作为setUp 一部分创建的每个对象的事务的额外成本,并且并未反映实时环境中的性能下降。

    【讨论】:

      猜你喜欢
      • 2010-09-09
      • 2018-11-30
      • 1970-01-01
      • 2020-05-11
      • 1970-01-01
      • 2019-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多