【发布时间】:2021-06-21 18:25:10
【问题描述】:
我尝试在 django 应用程序中创建对我的视图的测试,在我的 setUp 方法中我想创建新对象,然后将此对象的 id 传递给 reverse('edit') 以测试传递一个 id,就像我在我的urls,代码如下:
test_views.py
def setUp(self):
self.client = Client()
self.edit = reverse('edit', args=['id'])
self.id = Employee.objects.create(
econtact='testContact',
eemail='test@tset.pl',
ename='testName'
).id
网址
urlpatterns = [
path('edit/<int:id>', views.edit, name="edit"),
]
型号
class Employee(models.Model):
ename = models.CharField(max_length=100)
eemail = models.EmailField()
econtact = models.CharField(max_length=15)
谁能告诉我为什么,在运行这个测试用例后,我的控制台抛出了我:
django.urls.exceptions.NoReverseMatch: Reverse for 'edit' with arguments '('id',)' not found. 1 pattern(s) tried: ['edit/(?P<id>[0-9]+)$']
感谢您的帮助!
【问题讨论】:
标签: python django unit-testing testing