問題タブ [django-unittest]

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.

0 投票する
2 に答える
596 参照

django - pdbのdjangoユニットテストエラーの検査

例外をスローする単体テストがあります。例外は私のコードではスローされません。それはdjangoの奥深くからのものです。その場所でpdbセッションを開いて、何が起こるかを確認したいのですが、pdbでipythonを開いrun test myappてテストを実行すると、例外がスローされて出力されますが、pdbは何もキャッチしません。

絶望的な解決策は、djangoのソースを開いてimport pdb; pdb.set_trace()、調査したい場所に挿入することだと思います。しかし、もっと良い方法が必要です。私は何が欠けていますか?

0 投票する
1 に答える
1766 参照

django - Djangoテストケースを複数回実行するにはどうすればよいですか?

テストケースの1つに対して徹底的なテストを実行したいと思います(たとえば、ドキュメントを作成して、遭遇した奇妙なことをデバッグします)。

私の残忍な力は、またはpython manage.py test myappを使用してループで発砲することでしたが、今は純粋な方法に戻っていますか?.....Popenos.system

私は走っpython manage.py test myappて、私は得ました

私はエラーをグーグルで検索しましたが、それでもわかりません(空のrunTestメソッドを追加するように言われましたが、それはまったく正しく聞こえません...)

まあ、Pythonによるとunittest.TestCase

最も単純なTestCaseサブクラスは、特定のテストコードを実行するために、runTest()メソッドをオーバーライドするだけです。

ご覧のとおり、私の全体的な目標は、SimpleTestN回実行することです。Nに対するパス、失敗を追跡する必要があります。

どのようなオプションがありますか?

ありがとう。

0 投票する
1 に答える
2962 参照

python - djangoのデータベース保存をあざける

djangomodels.Modelでsaveメソッド呼び出しをモックアウトしようとしています。私はモックライブラリとしてモックを使用しています。

私はapps.deps.house_factoryにあるファイルhouse_factory.pyの関数をテストしています。

house_factory.py:apps.market.modelsからインポートハウス

Houseモデルをモックアウトしたいと思います。

テストメソッドは、unittest.TestCaseクラスの一部です。

このテストを実行すると、次のようになります。

call__ return self.call(* arg、** kw)MemoryError

これは、djangoとテストで真剣に取り組む最初の試みの1つです。したがって、データベース呼び出しをモックアウトするために、設定が間違っている可能性があります。

どんな助けでもありがたいです、

ジョナス。

0 投票する
1 に答える
385 参照

django - django/sqllite3 はテスト用のデータベースをどのように構築しますか?

こんにちは、django Web アプリケーションの単体テストを作成しようとしていますが、テストを実行しようとするとデータベースの問題が発生します。テスト用のインスタンスを作成するためにいくつかの場所で Factory Boy を使用しています (https://github.com/dnerdy/factory_boy がリポジトリです) が、テストを実行しようとするといくつかの問題が発生します。次のようなデータベース エラーが発生します。テストを実行しようとすると no such column が表示され、./manage.py syncdb を実行しようとすると table already exits エラーが発生します (以下に実際のエラーを含めます)。テスト用にデフォルトの sqlite3 データベース設定を使用しているため、テスト DB が作成されてテストが実行され、その後自動的に破棄されます。

これが私のsettings.pyファイルの関連セクションです

エラーをスローしているモデルは次のとおりです。

エラーが発生した工場は次のとおりです。

最後に、./manage.py テストを実行したときに発生するエラーを次に示します。

0 投票する
1 に答える
1049 参照

django - Django-タイムスタンプユニットテスト

私のアプリケーションは、カスタムURLへの入力として提供される日時に応じたステータスを提供します。通常は現在の時刻(datetime.now())を使用しますが、将来の時刻を確認するための単体テストを作成したいと思います。ただし、テストする変数としてタイムスタンプを使用するのに問題があります。アイデア?これまでのコードは次のとおりです。

urls.py:

views.py:

tests.py:

結果:

0 投票する
1 に答える
153 参照

python - djangoアプリケーションをユニットテストするための優れたアプローチ/設計

私のdjangoアプリケーションには、各機能のハンドラーがあります(たとえば、検証付きの請求書モデルを作成/保存/取得するためのSalesinvoiceハンドラー)。これらのハンドラーは、ユーザーが必要とするアクション(請求書の作成など)を実行するためにビューで使用されます。

  1. アプリケーションの信頼性を確保するには、ハンドラーのみを単体テストするだけで十分ですか? 上記の設計での私の考えは、必要に応じて、Webインターフェイスの代わりにハンドラーを使用してコマンドラインインターフェイスを作成できるということです。 このアプリケーションの設計は、djangoアプリを確実に単体テストするのに適していますか? ユーザーリクエスト->ビュー->ハンドラー(ハンドラーのみの単体テスト)->モデル

  2. *ビューのテストを自動化するためのpython/djangoライブラリはありますか?*私の目標は、可能な限り自動テストを行うことで、アプリケーションの信頼性を確保することです。

0 投票する
1 に答える
696 参照

django - django unittest で django-social-auth を使用してログインする

Web サイトにアクセスするために django-social-auth (Facebook バックエンド) 経由でログインする必要がある django プロジェクトのテスト スイートを作成しています。

私が今取っている方法は次のとおりです。

  • 各テストについて:
    • Facebook API を使用してテスト ユーザーを作成する
    • セレンを使用してログインする
    • ユーザーがログインしたら、Web サイトと対話する

問題は次のとおりです:通常のdjangoユニットテスト(セレンではありません)を使用するいくつかのテストを作成する必要があります。通常のdjango unittestを使用してログインする方法はありますか?

0 投票する
3 に答える
8248 参照

python - Python単体テスト:AssertionErrorをスローする同じオブジェクトでassertEqual

私はクラスを持っています

そして私test

テストを実行すると、次のようなエラーが表示されます

2 つのオブジェクトが同じ場合でも。

ここに欠けているものはありますか?

0 投票する
3 に答える
869 参照

python - Pythonのユニットテストで例外をキャッチしないようにするにはどうすればよいですか?

私はDjangoプロジェクトに取り組んでいますが、これは純粋なPythonのunittest質問だと思います。

通常、テストを実行すると、例外がテストランナーによってキャッチされ、それに応じて処理されます。

デバッグの目的で、この動作を無効にします。つまり、次のようにします。

通常どおり、例外が発生するとインタラクティブなPythonシェルに侵入します。

どうやってするか?

編集:これまでの回答に基づくと、これは私が思っていたよりもDjango固有の質問のようです!

0 投票する
1 に答える
191 参照

python - unitttestを使用してPythonで相対時間を計算するメソッドをテストするには?

私は、現在の時刻を基準にして計算を行うdjangoモデルのメソッドを持っています。ここにスニペットがあります:

unittestを使用してdjango/pythonでこれをテストする適切な方法は何ですか? 私がやりたいのは、テストで「今」の値をハードコーディングできるようにして、さまざまなエッジケースを試すことができるようにすることです。理想的には、テストで現在の日時に依存することは避けたいと思います。

1 つのアプローチは、使用する「現在」の値をオーバーライドするオプションのパラメーターを受け入れるようにメソッドを変更することです。Python には、メソッド シグネチャを変更せずに同様のことを行う関数はありますか?