問題タブ [pytest-django]
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 - Cookiecutter-django ユーザーの URL を i18n_patterns に追加するとテストが中断する
テストと国際化に問題があります。
- プロジェクトはDjango 1.11です
- パイソン3.5
- cookiecutter-django で作成されたプロジェクト
settings.py の国際化コード:
ユーザーの標準 Cookiecutter テストで pytest を実行すると、i18n_patterns を追加せずに正常に完了します。URL が次のように更新されると、次のようになります。
URL テストは失敗します。出力は次のようになります。
ご覧のとおり、問題は /en-us/ が URL で使用されているプレフィックスであることです。ここで、アサーションに /en-us/ を追加することでこれを修正できます。ただし、/en-us/ プレフィックスは正しくありません。これは言語コードであり、設定ファイルに示されている通常の言語プレフィックスではありません。
テスト以外で、runserver を使用して、/users// の URL に移動すると、/en-us/ ではなく /en/ で始まります
では、大きな問題は、i18n_patterns() が /en/ を使用するときに、なぜテストの前に /en-us/ を付けるのですか?
編集 users/tests/test_urls.py の内容は次のとおりです
python - Docker ランナー pytest がテストケースを収集しない
ssh-key
docker runnerに正常に配置されgit clone
、依存関係のインストールを実行できます。
通常のビルドインを使用すると、正常にpython manage.py test
動作します。しかし、私は今働いていpytest
ます。コマンドラインで実行できpytest
、正常な結果が得られました。
しかし、で実行するとgitlab-ci
。として使用docker
していrunner
ます。
更新 1:
確認しました。私はpytest.ini
トップディレクトリにあります。
pytest.ini
:
.gitlab-ci.yml
質問:
Update2:
Update3:
- を使用して
gitlab-ci
実行pytest
するdocker runner
方法