1

これはプログラミングの問題というよりも学習の問題であることは知っていますが、それでも質問する必要があります。反対票を投じないでください。他の適切な場所を知っていれば、ここで質問しなかったでしょう。次のように:

def takedown(request,aid):
    approveobj = get_object_or_404(approve,pk=aid)

    # fetching mapping
    map = mapping.objects.get(appval=approveobj)

    try:
        # deleting option from main database
        map.optval.delete()

        # changing the status of the appval
        map.appval.status = 'Pending'
        map.appval.save()

        # finally deleting the map
        map.delete()

    except:
        print("Error in taking down the entry")

    redirect_url = "/wars/configure/"+str(map.appval.warval.id)+"/"
    return HttpResponseRedirect(redirect_url)

上記のビューのテストをいくつか設計したいと思います。現在、適切な URL にリダイレクトされるかどうかを確認しています。他にテストできることはありますか?徹底的にテストする必要があります。

4

1 に答える 1

1

あなたの見解を見ると、他の3つの可能なテストを見ることができます:

  • aid存在しないに対してビューがステータス コード 404 を返すことをテストします。
  • マップ オブジェクトがデータベースに存在することを確認します。テストでビューを取得し、マップ オブジェクトが期待どおりに削除されていることを確認します。
  • try except ブロックで例外が発生した場合に、ビューが期待どおりに機能することをテストします。ここで何がうまくいかないと予想しているのかは明確ではありません。エラーを出力するだけなので、ユーザーには何も表示されないため、これをテストするのは難しいことに注意してください。
于 2012-07-27T09:31:17.217 に答える