問題タブ [django-jenkins]
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 - jenkinsとdjango-jenkinsの違いを理解する
私の質問はかなり主観的なものです。経験豊富なオタクの意見を知りたいので、モデレーターはそれを閉じないでください。
私はデプロイメントアリーナに不慣れで、Python / djangoのバックグラウンドから来て、jenkinsでRTFMを実行していました。githubを検索してdjango-jenkinsを見つけました。
CIの全体的な考え方は、ビルドが失敗した場合に最後の段階に戻ることができるように、継続的なビルドプロセスを持つことです。
私が理解できる限り、jenkinsはサーバー上で実行されます。サーバーは、コードがgithubまたは他のリポジトリにプッシュされるときに、テストを実行し、すべてのテストに合格するとデプロイします。ポーリングまたはcronジョブを使用してリポジトリと通信する場合があります。
一方、ドキュメントでdjango-jenkinsを見ると、それが言及されています
つまり、設定ファイルにコマンドを追加し、ローカルでテストしてからデプロイすることができます。(私が間違っている場合は私を訂正してください)
では、何がそれを差別化するのでしょうか?django-jenkinsは、CIにjenkinsを使用する追加のサーバーの必要性を排除しますか?
私に知らせてください、そして私が間違っているところを私に片付けてください。
python - コードがJenkinsにプッシュされたときのランダムなテストの失敗
私も以前にこれを尋ねましたが、答えに満足していません。
私が使用するもの:
- Django/pythonのWebサイトで作業しています。
- Python仮想環境でローカルに開発が行われました。
- SCMとしてGITを使用
- GITの開発者ブランチと本番ブランチに別々の仮想サーバーをデプロイする
- 継続的インテグレーションのためのJenkinsCIの使用。Jenkins用にデプロイされた個別の仮想サーバー
働く:
- Webサイトの単体テスト、スモークテスト、統合テストがあります。Jenkinsは、コードがローカルのgitブランチからgitリポジトリのDeveloperおよびProductionブランチにプッシュされるたびに、Jenkinsでビルドがトリガーされるように設定されています。
問題:
- 'python manage.py test'を実行すると、テストはローカルで合格します
- ランダムテスト(主に単体テスト)コードが他のブランチ(開発者と本番)にプッシュされると、Jenkinsで失敗します。
- テストが失敗した後、Jenkinsの[今すぐビルド]ボタンを押して手動でビルドを実行すると、通常、テストに合格し、ビルドは成功します。
- コードに変更が加えられておらず、コードがこれらのブランチにプッシュされている場合、Jenkinsでテストがランダムに失敗することがあります。
いくつかの一般的なエラー:
- AssertionError:302!= 200
- TypeError:'NoneType'オブジェクトは添え字化できません
- IndexError:リストインデックスが範囲外です
- AssertionError:datetime.datetime(2012、12、5、0、0、27、218397)!= datetime.datetime(2012、12、5、0、0、27、239884)
- AssertionError:応答が「x」にリダイレクトされました「y」が必要です
現在までのトラブルシューティング:
- すべてのテストを自分のマシンと仮想サーバーでローカルに実行しました。彼らはうまく動いています。
- 失敗した個々のテストをローカルおよび仮想サーバーで実行しました。彼らはうまく動いています。
- 失敗した条件を再現しようとしましたが、現在、テストに合格しています。
私が見る唯一の問題は、コードが開発者と本番環境にプッシュされるたびに、ランダムなテストの失敗が始まることです。一部のテストは繰り返し失敗します。
誰かがこの問題をトラブルシューティングするために私がもっとできることを教えてもらえますか?私は問題をグーグルで調べてみましたが、無駄でした。xunitpatternsのWebサイトには、不安定なテストの動作に関する優れた洞察があることは知っていますが、そこでほとんどのものを試したので、役に立ちません。
python - カバレッジレポートから(ディレクトリまたはファイル)を除外する方法
私はdjango-jenkinsを使用しており、カバレッジレポートでアプリ内のフォルダーをjenkinsに無視させようとしています。
https://github.com/kmmbvnr/django-jenkins/blob/master/django_jenkins/tasks/with_coverage.pyからオプション--coverage-excludeを見つけましたが、機能しないようです。
これまで私が試した:
と
およびパス名のさまざまな組み合わせ
そしてまた
誰かが私がこれをどのように使用するかについてのアイデアを私に与えることができますか?
python - Jenkins と django:django-jenkins の実行から popen を使用して「メモリを割り当てることができません」
私はジェンキンスを使用してジャンゴテストを実行しています.django-jenkinsで
数日以来(confsを変更せずに)、django-jenkinsを実行するとエラーが発生します
私のテストが合格したとしても。
完全なエラー(ジェンキンスから)はこちらhttps://gist.github.com/apelliciari/5106439
私のテストでは、Selenium を使用した LiveServerTestCase がいくつかあります。
エラーを検索すると、これらが見つかりました
Python subprocess.Popen "OSError: [Errno 12] メモリを割り当てられません"
http://bramp.net/blog/2010/05/python-close_fds-issue/
残念ながら、python/unix に関する私の知識はそれほど深くなく、修正方法を理解できません。
フォークを回避してテストを実行する方法はありますか? もっと時間がかかっても構わない。
django - pipを使用して要件をインストールしながらジェンキンスのビルドプロセスを高速化する方法
django プロジェクトに Jenkins CI を使用しています。Django-Jenkins の統合には、django-jenkins アプリを使用しています。Jenkins のビルド ステップで、新しい virtualenv を作成し、要件ファイルを使用して各ビルドのすべての依存関係をインストールします。ただし、前回のビルド以降に依存関係が何も変更されていない場合でも、すべての依存関係の新しいコピーを PyPI ミラーからダウンロードする必要があるため、ビルドが非常に遅くなります。そこで、PIP_DOWNLOAD_CACHE
環境変数を設定して、pip に組み込まれているローカル キャッシュの使用を開始しました。しかし、ビルド プロセス全体は依然として非常に遅く、10 分以上かかります。プロセス全体を高速化する方法はありますか? たぶん、コンパイルされた依存関係などをキャッシュすることによってですか?
jenkins - すべての Jenkins ジョブで Git URL を変更する方法
Jenkins には 100 以上のジョブがあり、git サーバーを変更して以来、すべてのジョブで Git URL を変更する必要があります。各ジョブをトラバースし、Git URL を変更する必要があります。グルーヴィーなスクリプトを手伝ってくれる人はいますか?
各ジョブをトラバースすることはできましたが、Git URL を取得したり変更したりすることはできませんでした:
私はこれでひどく助けが必要です、誰かが私を助けてください。
testing - django-jenkins エラー: runTest (django_jenkins.tasks.lettuce_tests.LettuceTestCase)
私は昨年、インターフェーステストのためにレタスを使用してきましたが、最近、継続的統合のためにdjango-jenkinsでレタスを使用しようとしています。
ただし、Django プロジェクトのアプリ ディレクトリにあるレタス テスト ケースのみを実行する際に問題が発生しています。
実行するpython manage.py jenkins
と、レタスのテストが実行され、実行の詳細を含む lettuce.xml ファイルがレポート フォルダーに作成されます。2 つのエラーが発生していますが、理由はわかりません (投稿の最後にあるエラーを参照してください)。
他の誰かが同じ問題を抱えているかどうかを確認するためにグーグルで検索しようとしましたが、何も見つかりませんでした。誰かが何か考えを持っていれば、私は感謝します。
私はこのチュートリアルに従っています。
ここでエラーを確認できます
ここで、github で私のコードにアクセスできます。
django - django-jenkins を使用したカバレッジ付きテストの実行
私が取り組んでいる Django プロジェクトがいくつかあり、継続的な統合のために Jenkins を使用しています。私はその取り決めをしばらくの間稼働させていましたが、うまく機能しています。
自動化されたテスト カバレッジ レポートを生成し、Jenkins で処理できるようにしたいと考えています。django-jenkinsがそのための方法のように見えたので、インストールしてcoverage
.
my の関連セクションは次のsettings.py
とおりです。
これで を実行できpython manage.py jtest
、期待どおりに動作します。ただし、を実行するpython manage.py jenkins
と、次のエラーが発生します。
テストの基礎として、標準の DjangoTestCase
とクラスを使用しています。LiveServerTestCase
ここでどこが間違っているのか分かりますか? ドキュメントはdjango_tests
削除されたことを暗示しているようですが、Django テストを現在どのように実行しているかについての兆候は見つかりません。
私はDjango 1.6.2を使用しています。
django - django-jenkins を使用したテスト ケースの検出
私は自分のプロジェクトに django フレームワークを使用していますが、継続的な統合に移行するために、jenkins を使用する予定です。当然、django-jenkins が選択されます。
単体テストにはdjango単体テストフレームワークを使用し、テストケースの検出にはパターン検索を使用しています。
django-jenkins とその他の必要なすべてのモジュールをインストールして構成しました。単体テスト ケースを実行するために jenking を実行すると、jenkins はテスト ケースを検出できません。
単体テスト ファイルまたは単体テスト ケース自体に名前を付ける際に従うべき構文はありますか?
また、ジェンキンスで使用するパターン検索パラメーターも見つかりませんでした。
jenkins - 実行された単体テスト数のアサート
Jenkins を使用して、django-jenkins を介して Django プロジェクトで単体テストを実行しています。
最近、一部の単体テストが実行されていないことがわかりました (誰かが誤って を変更したためimport
、Jenkins が単体テスト ファイルの一部を見逃していました)。
Jenkins が実行するテストの数、またはテスト パッケージの数を調べる方法はありassert
ますか?