2016-06-23 2 views
0

現在、私はテストスクリプトを作成しています。しかし、私はこのエラーを取得しています:ユニットテストのAssetErrorバインドメソッド

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

これらは私のコードです:これは私のテストスクリプト(test.py)

self.assertEqual(Score.percentage, 100) 

ある

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 

models.py私は期待しています:

Score.percentage = 100 

が、私は

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

答えて

1

割合は、あなたが

self.assertEqual(Score.percentage, 100) 

それを呼び出す必要があるので、

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

注意する必要があります方法で得た:それはまだ以来かかわらず、正常に動作しませんメソッドのスコアを呼び出し、インスタンススコア(self.score)をスコアの代わりにメソッドの内部に挿入します。

+0

素晴らしいです。しかし、それは文字列 '100' –

+0

を返すが、その良い...私はちょうどここで方法を見つけるためになるだろう –

関連する問題