有人可以解释为什么会失败:
def test_test(self):
...
print Test.id
print name[0]
self.assertEqual(name[0], Test.id)
输出
为别名'default'创建测试数据库...... ......
c8124e1d-C01C-4762-bcc0-d32df93e0824
c8124e1d-C01C-4762-bcc0-d32df93e0824 F.................... ================================================== ====================失败:...... -------------------------------------------------- -------------------- Traceback(最近一次调用最后一次):... self.assertEqual(name [0],Test.id)
AssertionError:u'c8124e1d-c01c-4762-bcc0-d32df93e0824'!= UUID( 'c8124e1d-C01C-4762-bcc0-d32df93e0824')
任何想法?
答案 0 :(得分:3)
查看错误消息:name[0]
是一个unicode字符串,Test.id
是一个UUID。它们具有相同的表示但是不同的对象。要测试相等性,只需将一个对象转换为另一个对象的类型:
self.assertEqual(name[0], str(Test.id))