よりアジャイル/BDD の方法で Doctest と Unit テストを行う方法を学ぶことに興味があります。妥当と思われるチュートリアルをいくつか見つけましたが、それらは単なるサムネイルです。私が本当に見たいのは、BDD スタイルで開発されたいくつかの Django プロジェクトのソース コードです。
私が不明なことは、リクエストオブジェクトなどをどのように処理するかです。アプリをデプロイした状況があり、開発中または本番環境の Python シェルからでも、本番環境でまったく異なる動作を取得しています。サーバ。いくつかのDoctestsがこれを診断するのに役立ち、最初にテストを書くというよりアジャイルなプロセスへの扉を開くことを願っています.
具体的には、テストしようとしているコードは次のとおりです。
def match_pictures_with_products( queryset, number_of_images = 3):
products = []
i = 0
for product in queryset:
if i < ( number_of_images ):
image = product.imagemain_set.all()[:1]
product.photo_url = image[0].photo.url
products.append(product)
i += 1
return products
def index(request):
"""returns the top 10 most clicked products"""
products = Product.objects.all()[:10]
products = match_pictures_with_products( products, 10) .
return render_to_response('products/product_list.html', {'products': products})
index が 10 個のオブジェクトを返すことを保証する Doctest を作成するにはどうすればよいですか?
Product クエリは、実稼働サーバーのシェルから正常に機能しているようです。実際のサーバーは製品をまったく返していません。