应付Django 1.3.1 Unit test的一个Bug

原创 2012年03月31日 11:30:38

应付Django 1.3.1  Unit test的一个Bug


资源版本信息:

Python:2.7

Django:1.3.1

DB:Postgresql

pycopg2:2.4.4


OK,如果你是使用和我一样的配置,恭喜你,你会得到和我一样的单元测试问题


作者:Wally Yu

CSDN:http://blog.csdn.net/quicktest

微博:http://www.weibo.com/quicktest


问题描述:

运行单元测试:

python manage.py test

得到报错信息:

psycopg2.programmingerror autocommit cannot be used inside a transaction


网上查了一下,是因为Django1.3.1对pscopg2的2.4.2及以上版本不兼容


解决办法(本人在windowsXP和Ubuntu11上均实践通过):

方法一:

升级Django至最新版本 1.4


方法二:

降级psycopg2到2.4.1版本:

  • Windows:下载对应的安装包,地址:http://www.stickpeople.com/projects/python/win-psycopg/index.2.4.1.html
  • Linux:运行如下命令:
sudo apt-get update
sudo apt-get install python-setuptools python-pip build-essential python-dev libpq-dev
sudo pip install psycopg2==2.4.1

至此,再次运行
python manage.py test


可以得到可爱的unit test 结果:

Windows:

D:\Projects\CloudTesting>python manage.py test
Creating test database for alias 'default'...
................................................................................
................................................................................
................................................................................
................................................................................
......
----------------------------------------------------------------------
Ran 326 tests in 17.266s

OK
Destroying test database for alias 'default'...

Linux:
root@SHA-Essqa-Linux:~/project/CloudTesting# python manage.py test
Creating test database for alias 'default'...
......................................................................................................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 326 tests in 20.123s

OK
Destroying test database for alias 'default'...

大功告成!!!


新手学测试----Unit Test(单元测试)

在程序员做项目的过程中,每当完成一个功能,首先自己需要对完成的功能进行测试,我现在正在做的项目用的工具是VS2012,那么接下来,就说一说在VS2012中是如何创建单元测试的。如何创建单元测试?在VS...
  • u010853701
  • u010853701
  • 2015年06月10日 17:20
  • 2347

支付宝即时到帐接口的python实现,示例采用django框架

http://blog.csdn.net/hornbills/article/details/40338949 因工作需要研究了支付宝即时到帐接口,并成功应用到网站上,把过程拿出来分享。 ...
  • haluoluo211
  • haluoluo211
  • 2016年03月21日 18:32
  • 1521

Android 单元测试(一)概述及Unit Test

概述Unit Test 和 Instrument Test 的区别 Android 单元测试
  • u010218288
  • u010218288
  • 2015年08月25日 10:56
  • 2523

c语言实现一个单元测试框架(Unit Test Framework)代码

csdn lidp  转载注明出处 此单元测试框架为我在google code上的开源项目spider-tool的一部分, 关于spider-tool,欢迎访问google c...
  • perfectpdl
  • perfectpdl
  • 2012年03月23日 22:56
  • 2510

Unit Test 访问Internal类型和方法

原则上Unit Test主要是测试一些Public的类型和方法等,但是有时候我们需要验证标记为Internal的类型是不是正常工作。那么,既然被标记为Internal了,应该就不能被所在项目之外的项目...
  • jiangzhanchang
  • jiangzhanchang
  • 2014年03月14日 11:27
  • 2314

使用Google Unit Test 测试你的C++代码

最近看了Bob大叔的《程序员的职业素养》,明白专业程序员是要写覆盖率100%的单元测试的,所以就在网上找了一个开源的测试框架试试,Google C++ Testing Framework 网站是 h...
  • benhaben
  • benhaben
  • 2013年07月14日 23:55
  • 637

使用 Visual Studio 2005 Team System 进行单元测试并生成用于 Unit Test Framework 的源代码(详解)

[原英文链接]:    Visual Studio 2005 Technical Articles    Author:Scott Dockendorf               Tellig...
  • weicomputer
  • weicomputer
  • 2012年03月15日 13:07
  • 645

Unit test学习总结

转自:http://www.blogjava.net/ldd600/archive/2009/09/04/293894.html 1.  测试什么: 1)      测试输出结果,测试返回结果的正...
  • Sasoritattoo
  • Sasoritattoo
  • 2013年11月24日 15:50
  • 1743

Unit test 学习总结(二)

这段时间在团队里一直在负责对单元测试的探索和落地,感觉有必要总结下自己这段时间的探索成果和大家分享。加之已经忙的很久没写博客了,感觉没有沉淀,这样不好。iOS单元测试系列会一直更新,按主题将我在单元测...
  • binglan520
  • binglan520
  • 2016年05月30日 15:30
  • 355

play+angularjs+karma unit test(单元测试)

最近前后端代码写完了,研究下angularjs单元测试,网上找了好多资料,都是一知半解,很散,为了记录下痛苦的学习历程和为即将要学习的战友提供点帮助,决定写一下。...
  • u011930016
  • u011930016
  • 2016年05月06日 16:56
  • 1217
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:应付Django 1.3.1 Unit test的一个Bug
举报原因:
原因补充:

(最多只允许输入30个字)