Django测试中的执行顺序是啥
Posted
技术标签:
【中文标题】Django测试中的执行顺序是啥【英文标题】:What is the order of execution In Django TestsDjango测试中的执行顺序是什么 【发布时间】:2013-09-26 12:01:16 【问题描述】:这是一个示例测试类:
@decorator_1()
class SimpleTest(TestCase):
fixtures = ['test_fixture.json']
def setup(self):
x =1
y=2
def teardown(self):
x =None
y=None
def test_one(self):
self.assertEquals(1,1)
@decorator_2
def test_two(self):
self.assertEquals(2,2)
这些部分的执行顺序是什么?:
setup
teardown
fixture loading
decorator_1
decorator_2
test_one
test_2
我正在尝试找到一种在加载装置之前覆盖设置变量的方法。
【问题讨论】:
【参考方案1】:包含一个全新的文件
import sys
try:
if 'test' in sys.argv:
from testsettings import *
except ImportError:
print "something went wrong with the import"
del sys
修改一些设置
import sys
try:
if 'test' in sys.argv:
MY_SETTING = 'xxy'
del MY_SETTING_2
except Exception as e:
print "something went wrong %s" % e.message
del sys
注意:如果您想要删除设置,您必须从您要导入的文件中进行设置。它不能在您正在导入的文件中。
【讨论】:
以上是关于Django测试中的执行顺序是啥的主要内容,如果未能解决你的问题,请参考以下文章
react 钩子中的 useEffect 执行顺序及其内部清理逻辑是啥?