簡體   English   中英

范圍正在跳過返回語句

[英]Coverage is skipping return statements

我有一堂課和一些測試。 Coverage可以正常運行,但是報告包含return的行未執行。 多行return語句的其余部分可以很好地執行,而不是return本身。

類:

class Game(models.Model):
    ...

    def __str__(self):
        return (
            f'Name: {self.name}\n'
            f'Status: {self.status}\n'
        )

    def render_html(self):
        return (
            f'Name: {escape(self.name)}<br/>'
            f'Status: {escape(self.status)}<br/>'
        )

該測試同時調用render_html__str__ 我正在使用Django並以coverage run --branch ./manage.py test

編輯:我稍后在同一個文件中進行另一個測試,該測試具有一個簡單的return somestring ,該return somestring也沒有運行,因此不是多行字符串的格式。

我最終通過安裝django_nose並使用python manage.py test --with-coverage --cover-package=app運行來解決此問題。

我不完全確定為什么運行coverage直接產生不正確的結果,但是我認為這是因為django_nose理解的Django中有些奇怪的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM