Python 断言对同一对象失败
单元测试失败,出现以下异常:Python 断言对同一对象失败,python,django,unit-testing,Python,Django,Unit Testing,单元测试失败,出现以下异常: def test_question_form(self): question = Question(question_text='Dummy question', pub_date=timezone.now( ) + datetime.timedelta(days=1), allow_multiple_choices=True) question_form = QuestionForm( {'question_text': q
def test_question_form(self):
question = Question(question_text='Dummy question', pub_date=timezone.now(
) + datetime.timedelta(days=1), allow_multiple_choices=True)
question_form = QuestionForm(
{'question_text': question.question_text, 'pub_date': question.pub_date, 'allow_multiple_choices': 'on' if question.allow_multiple_choices else 'off'})
self.assertTrue(question_form.is_valid())
self.assertEqual(question_form.save(commit=False), question)
断言者错误:!=
在一些手动断言之后,对象似乎是相等的,我做错了什么?由于没有保存实例,因此通过form.save with commit=False返回的模型实例和原始未保存的对象将永远不会相等,除非您重写模型的u eq_u_u方法来处理此问题: 从: 相等方法的定义使具有相同 主键值和同一混凝土等级视为相等, 除了主键值为None的实例不等于除其自身之外的任何对象
您可能创建了两个虚拟问题对象的实例除了重写equal方法之外,还有什么解决方案?是否必须手动断言所有模型成员?请参阅