テストの失敗に関してDjangoでこのエラーが発生しました

アルフレッドツァン:

これは、HomeTestsのtests.pyファイルで1つのテストが失敗したことを示しています。製品の申し込みをしています。これがtests.pyファイルです。

from django.urls import reverse
from django.urls import resolve
from django.test import TestCase
from .views import home, product_topics
from .models import Product

class HomeTests(TestCase):
    def test_home_view_status_code(self):
        url = reverse('home')
        response = self.client.get(url)
        self.assertEquals(response.status_code, 200)

    def test_home_url_resolves_home_view(self):
        view = resolve('/')
        self.assertEquals(view.func, home)

    def test_home_view_contains_link_to_topics_page(self):
        product_topics_url = reverse('product_topics', kwargs={'pk': self.product.pk})
        self.assertContains(self.response, 'href="{0}"'.format(product_topics_url))

class ProductTopicsTests(TestCase):
    def setUp(self):
        Product.objects.create(name='Light Bulb', description='Conserver energy',price=25.99,qtyOnHand=25)

    def test_product_topics_view_success_status_code(self):
        url = reverse('product_topics', kwargs={'pk': 1})
        response = self.client.get(url)
        self.assertEquals(response.status_code, 200)

    def test_product_topics_view_not_found_status_code(self):
        url = reverse('product_topics', kwargs={'pk': 99})
        response = self.client.get(url)
        self.assertEquals(response.status_code, 404)

    def test_product_topics_url_resolves_board_topics_view(self):
        view = resolve('/products/1/')
        self.assertEquals(view.func, product_topics)

AttributeErrorは、HomeTestsに属性Productがないことを示しています。

これが私のviews.pyです

from django.shortcuts import render,get_object_or_404
from django.http import HttpResponse
from .models import Product

# Create your views here.

    def home(request):
    
        products = Product.objects.all()
        return render(request, 'home.html', {'products': products})
    
    def product_topics(request, pk):
    
        product = get_object_or_404(Product, pk=pk)
        return render(request, 'topics.html', {'product': product})

urls.pyには、以下があります。

from django.conf.urls import url
from django.contrib import admin
from inventories import views

urlpatterns = [
    url(r'^$', views.home, name='home'),
    url(r'^products/(?P<pk>\d+)/$', views.product_topics, name='product_topics'),
    url(r'^admin/', admin.site.urls),
]

このエラーが発生する理由と、このエラーの意味を知りたいので、修正します。私はUrlsのチュートリアルに従っています

Mohammad Jafari:

問題はこのテスト全体です。

def test_home_view_contains_link_to_topics_page(self):
    product_topics_url = reverse('product_topics', kwargs={'pk': self.product.pk})
    self.assertContains(self.response, 'href="{0}"'.format(product_topics_url))

そこにはありませんproductresponse内のオブジェクトself呼び出している間、self.responseself.productたぶん、あなたはこのようなことをしたいと思いましたか?:

from django.test import Client


class HomeTests(TestCase):
    def setUp(self):
        self.client = Client()

    # the other tests

    def test_home_view_contains_link_to_topics_page(self):
        product = Product.objects.create(
            name='name', description='descr', price=1.0, qtyOnHand=2
        )
        product_topics_url = reverse('product_topics', kwargs={'pk': product.pk})
        response = self.client.get(url)
        content = response.content.decode('utf-8')
        self.assertContains(content, 'href="{0}"'.format(product_topics_url))

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

コンテキストの初期化に失敗しましたSpringMVCでエラーが発生しました

分類Dev

Jestでのテストがエラーで失敗しました:ファイルの変更の監視中にエラーが発生しました:EMFILE

分類Dev

テストの実行に失敗しました:ComponentInfo {}のインストルメンテーション情報が見つかりません-IntelliJでGradleをテストしようとしてエラーが発生しました

分類Dev

JsoupPOSTリクエストが失敗しました。URLのフェッチ中にHTTPエラーが発生しました。ステータス= 400

分類Dev

「依存関係解決リスナーへの通知に失敗しました。」FirebaseUIのインポート時にエラーが発生しました

分類Dev

依存関係のインストールに失敗しました!Laravelアプリをherokuにデプロイ中にエラーが発生しました

分類Dev

ElasticsearchCrudRepositoryの一括挿入でエラーが発生する-検証に失敗しました:1:リクエストが追加されていません

分類Dev

iOS Twitterキットの使用でエラーが発生する 'リクエストに失敗しました:禁止されています'

分類Dev

Ubuntu18.04で「extconf.rbが失敗しました」が原因で「railsのインストール中にエラーが発生しました」

分類Dev

jsonをインストールできませんでした。Windowsでエラーが発生します。エラー:jsonのインストール中にエラーが発生しました:エラー:gemネイティブ拡張機能のビルドに失敗しました

分類Dev

PlayFrameworkでプロジェクトを実行中にエラーが発生しました。ポート:9000のリッスンに失敗しました

分類Dev

Railsをインストールしようとしたときにこのエラーが発生しましたエラー:gemネイティブ拡張機能のビルドに失敗しました。(Ubuntu 16.04)

分類Dev

なぜ:エラーが発生するのですか:「HTTPリクエストの応答アサーション:テストに失敗しました:テキストに/ 302 /が含まれていると予想されます」

分類Dev

androidがマニフェストのマージに失敗しましたnativescriptでエラーが発生しました

分類Dev

エラーSparkContext:SparkContextの初期化中にエラーが発生しました。java.net.BindException:要求されたアドレスを割り当てることができません:サービス 'sparkDriver'が失敗しました

分類Dev

エラーSparkContext:SparkContextの初期化中にエラーが発生しました。java.net.BindException:要求されたアドレスを割り当てることができません:サービス 'sparkDriver'が失敗しました

分類Dev

Robo 3Tでエラーが発生しました... localhost:27017への接続に失敗しました

分類Dev

@本番スクリプトで失敗しました。npm runproductionの実行中にエラーが発生しました

分類Dev

ReactのAxiosを使用してhttpリクエストを作成すると、飛行前にCORSエラーが発生して失敗します。サーバーでCORSを有効にしましたが、まだ機能していません

分類Dev

「テンプレート引数の推定/置換に失敗しました:」C ++でエラーが発生します

分類Dev

RoR rspecがテストに失敗し、エラーが発生しました '<top(必須)>のブロック(2レベル)

分類Dev

CVXPYのインストール中にエラーが発生しました-qdldlのホイールの構築に失敗しました

分類Dev

httpsへのHTTPリクエストの実行中にエラーが発生しました->ハンドシェイクが失敗しました

分類Dev

Selectステートメントのネストを回避しようとしていますが、「varchar値をデータ型intに変換するときに変換に失敗しました」というエラーが発生します。

分類Dev

タスク ':app:transformClassesWithMultidexlistForDebug'の実行に失敗しました。メインのdexリストの生成中にエラーが発生しました

分類Dev

ハンドラーのディスパッチに失敗しました。ネストされた例外はjava.lang.AbstractMethodErrorです:WASでのみエラーが発生し、Spring埋め込みTomcatではエラーが発生しません

分類Dev

Laravel5:関連するデータベーステーブルへのデータの書き込み中にQueryExceptionが発生しました。エラー:「子行を追加または更新できません:外部キー制約が失敗します」

分類Dev

インストール中にエラーが発生しました-データベースの初期化に失敗しました

分類Dev

バケットの作成中にIBMCloud Object Storageエラーが発生しました-'作成に失敗しました。ボールト名が無効です。'

Related 関連記事

  1. 1

    コンテキストの初期化に失敗しましたSpringMVCでエラーが発生しました

  2. 2

    Jestでのテストがエラーで失敗しました:ファイルの変更の監視中にエラーが発生しました:EMFILE

  3. 3

    テストの実行に失敗しました:ComponentInfo {}のインストルメンテーション情報が見つかりません-IntelliJでGradleをテストしようとしてエラーが発生しました

  4. 4

    JsoupPOSTリクエストが失敗しました。URLのフェッチ中にHTTPエラーが発生しました。ステータス= 400

  5. 5

    「依存関係解決リスナーへの通知に失敗しました。」FirebaseUIのインポート時にエラーが発生しました

  6. 6

    依存関係のインストールに失敗しました!Laravelアプリをherokuにデプロイ中にエラーが発生しました

  7. 7

    ElasticsearchCrudRepositoryの一括挿入でエラーが発生する-検証に失敗しました:1:リクエストが追加されていません

  8. 8

    iOS Twitterキットの使用でエラーが発生する 'リクエストに失敗しました:禁止されています'

  9. 9

    Ubuntu18.04で「extconf.rbが失敗しました」が原因で「railsのインストール中にエラーが発生しました」

  10. 10

    jsonをインストールできませんでした。Windowsでエラーが発生します。エラー:jsonのインストール中にエラーが発生しました:エラー:gemネイティブ拡張機能のビルドに失敗しました

  11. 11

    PlayFrameworkでプロジェクトを実行中にエラーが発生しました。ポート:9000のリッスンに失敗しました

  12. 12

    Railsをインストールしようとしたときにこのエラーが発生しましたエラー:gemネイティブ拡張機能のビルドに失敗しました。(Ubuntu 16.04)

  13. 13

    なぜ:エラーが発生するのですか:「HTTPリクエストの応答アサーション:テストに失敗しました:テキストに/ 302 /が含まれていると予想されます」

  14. 14

    androidがマニフェストのマージに失敗しましたnativescriptでエラーが発生しました

  15. 15

    エラーSparkContext:SparkContextの初期化中にエラーが発生しました。java.net.BindException:要求されたアドレスを割り当てることができません:サービス 'sparkDriver'が失敗しました

  16. 16

    エラーSparkContext:SparkContextの初期化中にエラーが発生しました。java.net.BindException:要求されたアドレスを割り当てることができません:サービス 'sparkDriver'が失敗しました

  17. 17

    Robo 3Tでエラーが発生しました... localhost:27017への接続に失敗しました

  18. 18

    @本番スクリプトで失敗しました。npm runproductionの実行中にエラーが発生しました

  19. 19

    ReactのAxiosを使用してhttpリクエストを作成すると、飛行前にCORSエラーが発生して失敗します。サーバーでCORSを有効にしましたが、まだ機能していません

  20. 20

    「テンプレート引数の推定/置換に失敗しました:」C ++でエラーが発生します

  21. 21

    RoR rspecがテストに失敗し、エラーが発生しました '<top(必須)>のブロック(2レベル)

  22. 22

    CVXPYのインストール中にエラーが発生しました-qdldlのホイールの構築に失敗しました

  23. 23

    httpsへのHTTPリクエストの実行中にエラーが発生しました->ハンドシェイクが失敗しました

  24. 24

    Selectステートメントのネストを回避しようとしていますが、「varchar値をデータ型intに変換するときに変換に失敗しました」というエラーが発生します。

  25. 25

    タスク ':app:transformClassesWithMultidexlistForDebug'の実行に失敗しました。メインのdexリストの生成中にエラーが発生しました

  26. 26

    ハンドラーのディスパッチに失敗しました。ネストされた例外はjava.lang.AbstractMethodErrorです:WASでのみエラーが発生し、Spring埋め込みTomcatではエラーが発生しません

  27. 27

    Laravel5:関連するデータベーステーブルへのデータの書き込み中にQueryExceptionが発生しました。エラー:「子行を追加または更新できません:外部キー制約が失敗します」

  28. 28

    インストール中にエラーが発生しました-データベースの初期化に失敗しました

  29. 29

    バケットの作成中にIBMCloud Object Storageエラーが発生しました-'作成に失敗しました。ボールト名が無効です。'

ホットタグ

アーカイブ