擅长:python、mysql、java
<p>我分享了我在项目中使用的<a href="https://github.com/erm0l0v/django-fake-model" rel="noreferrer">solution</a>。也许它能帮助别人。</p>
<p><code>pip install django-fake-model</code></p>
<p>创建假模型的两个简单步骤:</p>
<p>1)在任何文件中定义模型(我通常在测试用例附近的测试文件中定义模型)</p>
<pre><code>from django_fake_model import models as f
class MyFakeModel(f.FakeModel):
name = models.CharField(max_length=100)
</code></pre>
<p>2)将decorator<code>@MyFakeModel.fake_me</code>添加到<em>TestCase</em>或测试函数。</p>
<pre><code>class MyTest(TestCase):
@MyFakeModel.fake_me
def test_create_model(self):
MyFakeModel.objects.create(name='123')
model = MyFakeModel.objects.get(name='123')
self.assertEqual(model.name, '123')
</code></pre>
<p>这个decorator在每次测试之前在数据库中创建表,并在测试之后删除表。</p>
<p>您还可以手动创建</em>/<em>删除</em>表:<code>MyFakeModel.create_table()</code>/<code>MyFakeModel.delete_table()</code></p>