問題タブ [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 投票する
5 に答える
24966 参照

python - djangoでFileFieldをユニットテストするきれいな方法は何ですか?

FileField を持つモデルがあります。単体テストしたい。django テスト フレームワークには、データベースと電子メールを管理する優れた方法があります。FileFields に似たものはありますか?

単体テストが実際のアプリケーションを汚染しないようにするにはどうすればよいですか?

前もって感謝します

PS: 私の質問は、テスト フィクスチャを使用した Django テスト FileFieldのほぼ複製ですが、受け入れられた回答がありません。このトピックについて何か新しいことがあるかどうかをもう一度尋ねたいだけです。

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

django - fabric を使用して django テストを実行する

私が作成したアプリケーションのテストを実行しようとするファブリック スクリプトがあります。
setup.py を使用して既にインストールされており、インポートできます。ここで
見つけたスクリプトに従っています。 私の問題は、django-admin が私のアプリを見つけられないことです:

トレースバック (最新の呼び出しが最後):
ファイル "/usr/local/lib/python2.6/dist-packages/fabric/main.py"、542 行目、メイン コマンド [name](*args, **kwargs) ファイル"/usr/local/lib/python2.6/dist-packages/envconf/fabfile.py"、35 行目、テスト management.call_command('test', 'envconf') ファイル内 "/usr/local/lib/python2 .6/dist-packages/django/core/management/ init .py", line 166, in call_command return klass.execute(*args, **defaults) File "/usr/local/lib/python2.6/dist- packages/django/core/management/base.py"、220 行目、実行時の出力 = self.handle(*args, **options) ファイル "/usr/local/lib/python2.6/dist-packages/django/ core/management/commands/test.py"、37 行目、ハンドル障害 = test_runner.run_tests(テストラベル)
ファイル "/usr/local/lib/python2.6/dist-packages/django/test/simple.py"、395 行目、run_tests スイート = self.build_suite(test_labels, extra_tests) ファイル "/usr/local/lib/ python2.6/dist-packages/django/test/simple.py"、285 行目、build_suite app = get_app(label) ファイル "/usr/local/lib/python2.6/dist-packages/django/db/models /loading.py", line 140, in get_app raise ImproperlyConfigured("App with label %s could not be found" % app_label) django.core.exceptions.ImproperlyConfigured: App with label envconf could not be found

これが私のコードです: import functools import os

何が間違っている可能性がありますか?

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

django - データベースで UDF を使用する Django サイトをテストするにはどうすればよいですか?

多数の UDF を持つ postgres db を使用する django プロジェクトがあります。UDF は plpythonu で書かれています。plpyhtonu は信頼できない言語であるため、データベースのスーパー ユーザーのみがそれを使用して UDF を作成できます。これは、テスト スイート内でプログラムによってそれらを作成する方法がないという点で、深刻な問題を引き起こします。現在、次の 2 つのオプションがあります。

  1. django.db.backends.creation._create_test_db を変更して、UDF が既に読み込まれているテンプレートからテスト データベースを作成します。これはハッキーで保守が面倒なようです。
  2. MD5 認証を使用してスーパー ユーザーを作成し、psycopg2 を使用してテスト スイートに UDF をロードします。これは安全ではないようです。

これを行うことができるそれほどひどい方法はありますか?

ありがとう。

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

python - Django で Unittest を実行する

私は自分の django ビューの小さな単体テストを作成しました。私のプロジェクト構造は次のようなものです

プロジェクト名/

これは私のディレクトリ構造です。次のコマンドを使用してテストを実行しています。

$python manage.py test_coverage module1 module2 -v2

次に、テストをうまく実行しますが、ディレクトリ構造を少し変更しました。新しいディレクトリtests /を作成し、すべてのテストファイルを保持しました

プロジェクト名/

上記の同じコマンドを使用して、ディレクトリにあるテストを実行できるようになりました。そのようなテストを実行する別の方法はありますか?

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

python - DjangoのunittestでClient()のデフォルトドメインを変更します

Djangoビューの単体テストを書いています。

c = Client()は、上書きしたいドメインとして「http:// testserver」を取ります。そのテストクライアントに実際のドメインを追加したいのですが、テストクライアントをカスタマイズする方法はありますか?

0 投票する
0 に答える
589 参照

django - Django 単体テストでデータベース エラーが発生する - トランザクションをコミットできない - SQL ステートメントが進行中

unittest2と一緒に使用しmanage.py testていますが、テストを実行しているように見える前に、以下のような恐ろしいデータベース エラーが発生します。私は自分の開発環境 (実際にはさまざまな理由でドリームホスト サーバー上) にいて、データベースとして sqlite を使用しています。

アプリを実稼働用の場所からコピーしても (そして、それに応じて settings.py を編集しても)、同じエラーが発生します (開発環境と同じデータベース ファイルをアドレス指定する必要はありませんが)。

更新: データベース ファイルのすべてのインスタンスを別のファイル名に移動しても、同じエラーが発生します。これにより、テスト環境が何らかの形で偽のデータベースを見ているか、非常に奇妙なことが起こっていると思われます。

基本的に、これを修正するためにどこから始めればよいかわかりません。何か案は?

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

python - django.test のインポートが機能しない

django.test モジュールのインポートに失敗しているため、単体テストが機能しません。

誰かがそれを解決するのを手伝ってください。私はdjangoバージョン1.3を使用しています

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

django - Djangoテストクライアントで予想される404をテストすると、未処理の例外が発生します

Djangoテストクライアントを使用してdjango.test.client.Client、Djangoアプリでいくつかのビューをテストしています。特に、ビューがget_object_or_404メソッドを呼び出し、オブジェクトがそこにない場合をテストしているので、404が返されるはずです。

私のテストコードは次のようになります。

ただし、代わりに取得しているのは、ビューコードの未処理の例外エラーです。

Django1.3のドキュメントによると

テストクライアントに表示されない唯一の例外は、Http404、PermissionDenied、およびSystemExitです。Djangoはこれらの例外を内部でキャッチし、適切なHTTP応答コードに変換します。このような場合、テストでresponse.status_codeを確認できます。

この場合、DjangoがHttp404例外をキャッチしないのはなぜですか?

(ドキュメントに準拠して)例外がテストクライアントにスローされないことに注意してください。クライアント側で例外をキャッチしようとすると、次のようになります。

同じエラーと追加のエラーが発生します。

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

python - Django Unittest がフィクスチャをロードしない

Django テストランナーは、メディア アプリの Fixture/ ディレクトリからフィクスチャをロードしていません。どうすればデバッグできますか - それが私のフィクスチャを探しているかどうか、どこを探していますか?

(パイソン 2.7.1、ジャンゴ 1.3.1)

私のアプリ (app_label=media) ディレクトリ構造:

general.py

トレースバック:

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

django - django1.4c1ユニットテストは「その他」のデータベースを探します

djangoトランク(1.4c1)の新規インストールで実行される単体テストに合格するには、次のotherように、settings.pyに「ダミー」データベースを追加する必要があります。

なぜそうなのか、そしてdjango / db / utils.pyのConnectionHandlerクラスにあるこの「ensure_defaults」関数の目的は何ですか?

ジャンゴをより深いレベルで理解することに興味があります...