单元测试中的AssetError Bound方法

时间:2016-06-23 08:38:06

标签: python django

目前,我正在创建一个测试脚本。但是我收到了这个错误:

 <bound method Score.percentage of <Score: Score object>> != 100

这些是我的代码:

models.py

class Score(models.Model):


    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    Name = models.CharField(max_length=120)
    score = models.FloatField(null=True, default=0)

    def percentage(self):

        percentage = (score/50) * 100

        return percentage

这是我的测试脚本(test.py)

self.assertEqual(Score.percentage, 100)

我期待:

Score.percentage = 100

但我得到了

 <bound method Score.percentage of <Score: Score object>> != 100

1 个答案:

答案 0 :(得分:1)

百分比是一种方法,因此您需要调用它

self.assertEqual(Score.percentage, 100)

应该是

self.assertEqual(Score.percentage(), 100)

注意:它仍然无法正常工作,因为您需要在分数的实例上调用该方法,并调用方法内部的实例分数(self.score)得分。