moh*_*666 5 testing django unit-testing fixtures
我终于决定为我的所有代码创建单元测试.那就是我正在尝试根据我的模型创建灯具来测试我的功能.
我使用dumpdata命令创建了一个json fixture,并将它放在我的app上的fixtures目录下.以下是我测试的代码:
import unittest
from mysite.myapp.models import Post
class RatingTestCase(unittest.TestCase):
fixtures = [
'posts.json',
]
def test_me(self):
p = Post.objects.all()
self.assertTrue(p)
Run Code Online (Sandbox Code Playgroud)
我在Arch Linux机器上使用以下命令运行我的测试:
python2.7 manage.py test myapp
Run Code Online (Sandbox Code Playgroud)
它创建一个sqlite数据库并安装所有表和indeces,但最后它说没有找到夹具,它说我的测试失败,因为它没有找到任何数据.
我正在运行Django开发版的最新版本,并注意到根据文档,我应该使用以下方法导入unittest:
from django.utils import unittest
但是,当我这样做时,它抱怨无法导入unittest.这就是我直接从我的python路径导入unittest的原因.
我以前试过模拟django模型对象,但我认为使用fixture来测试Django应用比使用模拟库更好.知道如何加载灯具吗?
提前致谢.
编辑:如果我将我的灯具名称更改为initial_data.json,它将在每次运行我的测试时加载它.但是,我仍然需要有多个灯具名称来运行不同的测试.
编辑:我通过从以下导入TestCase得到它:
from django.test import TestCase
Run Code Online (Sandbox Code Playgroud)
有几件事可以帮助:
| 归档时间: |
|
| 查看次数: |
2791 次 |
| 最近记录: |