問題タブ [factory-boy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - Factory Boy でユーザー認証が必要な Django ビューのテスト
スタッフ ユーザーが下書き状態のオブジェクトを表示できるビューが必要です。しかし、このビューの単体テストを書くのは難しいと思います。
セットアップにFactory Boyを使用しています:
テスト用にログインしたスタッフ ユーザーがいる場合、それを使用してビュー (404 ではなく status_code 200) をテストするにはどうすればよいですか?
たとえば、このテストは失敗します (404 != 200) 私のビューでis_staff
True を持つユーザーがビューにアクセスできる場合:
django - ファクトリーボーイは「model__key」でリレーション値を設定
Factory Boy でデータを作成しようとしていますが、Factory Boy インデックス ページの OrderFactory の例のmodel__key
ように使用すると問題が発生します。
これは私の工場です:
そして、これは私が実行しようとしているものです:
しかし、私は得ています:
実際のインスタンスを注入すると、次のように機能します。
ありがとう!
python - Django アプリで画像フィールドを作成できません
私は、コア機能がフォトアルバムの保存に基づいているDjangoアプリに取り組んでいます。Python 3 で Django 1.8.1 を使用しています。
これまでに作成したモデルは次のとおりです。
テストは次のとおりです。
現在、Factory Boy を使用して、テストのオブジェクトを作成しています。Factory Boy でオブジェクトを作成しようとするとPhoto
、次のエラーが発生します。
イメージを手動で定義しようとすると、同じことが起こります。私が知る限り、画像へのパスは正しいです。また、Python 2.7 で動作する Django 1.7 プロジェクトでも同様のものを問題なく使用したので、Python 3 固有のものである可能性があります。
ここでどこが間違っているのか誰にもわかりますか?Django 管理インターフェイスを使用して新しい Photo オブジェクトを作成できるので、問題はモデルにあるとは思いません。テストでモデルとやり取りする方法だけに問題があると思います。
django - factoryboy を使用してフィールドを JSON として保存する
フィールドの 1 つが であるモデルのインスタンスを作成しようとしていますJSONField
。を介してモデルのインスタンスを作成するときにfactoryboy
、フィールドをJSONFieldとしてテストデータベースに保存したいと考えています。フィールドを として渡すだけで、データ型JSON
に格納されます。Unicode
私はこれにこだわっています。
django - django-nose で複数のプロセッサを使用すると、DatabaseError が生成されます
django-nose
実行時間を短縮するために、複数のプロセッサを使用してテスト スイートを実行しようとしています。1 つのプロセッサではすべてのテストに合格しますが、複数のプロセッサを使用すると、DatabaseError: server closed the connection unexpectedly
複数のプロセッサで単独で実行すると、90% の確率で失敗する 2 つのテストが見つかりました。AUserFactory
は で作業してaccounts_user
おり、aCustomerFactory
は で作業していaccounts_customer
ます。通過ログで、トランザクションが終了する前に最後のUPDATE
toが完了していることに注意してください。失敗したaccounts_customer
ログでは、トランザクションが既に閉じられているため、これは決して発生しません。UPDATE
accounts_customer
DatabaseError: server closed the connection unexpectedly
問題の原因を特定しようとしています。問題は、django または postgres がトランザクションを処理する方法にある可能性が最も高いと思いますが、以下のいずれかである可能性があります。
- ジャンゴ1.7
- パイソン2.7
- ジャンゴ鼻
- factory_boy
- ポストグル
postgres ログを渡す:
postgres ログの失敗:
スタックトレース:
python - faker (python) はシェルでランダム化しますが、DjangoModelFactory オブジェクトではランダム化しません
私はフェイカー(http://www.joke2k.net/faker/)を使用したユニットテスト用のモデルをいくつか持っていますが、シェルではランダムです:
種まきはオプションです。しかし、新しいオブジェクトを作成すると、常に同じメールが作成されます。
モデルは次のようになりました。
../users.py:
そして今、私は持っています:
違いはありませんでした。シードを与えられたとしても、オブジェクトの作成ではなく、シェルで何かをランダム化するにはどうすればよいですか? ありがとうございました