問題タブ [build-automation]
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.
testing - 失敗できないテストを検出する自動化された方法、最小コードカバレッジを取得するためにチェックインしましたか?
私には開発者がいて、失敗することのないテストを作成することでコードカバレッジを回避します。
コードはひどいものですが、テストはassert(true)であるため、それをキャッチすることはありません。
私はレビューをコーディングしていますが、常に全員が彼らのために働くことはできません。このような人々に、どのようにして優れたソフトウェアを作成する動機を与えるのですか?
失敗できないテストを検出するためのビルドプラグインはありますか?
C#、mbUnitテスト。
build-process - 自動ビルドでドキュメントを生成する
自動ビルド中にプロジェクトドキュメントを生成する方法はありますか?
ユーザーマニュアルを含む単一のソースファイル(HTML?)のセットが欲しいのですが、それらから以下を生成します。
- PDFドキュメント
- CHMヘルプ
- ヘルプのHTMLバージョン
内容は基本的に3つのフォーマットすべてで同じです。
現在、msbuildとCCNETを使用していますが、必要に応じて変更できます。
java - ハドソンの「開いているファイルが多すぎる」問題をどのように修正しますか?
Hudsonを継続的インテグレーションシステムとして使用して、多くのプロジェクトの自動ビルド(夜間およびCVSポーリングに基づく)を実行します。
15分ごとにCVSをポーリングするプロジェクトもあれば、5分ごとにポーリングするプロジェクトもあれば、1時間ごとにポーリングするプロジェクトもあります。
数週間ごとに、次の出力で失敗するビルドを取得します。
次のビルドは常に機能し(変更は0)、最大2つのビルドジョブが同時に実行され、プロセス中に開いているファイルが多すぎます。
今週末、金曜日の夜にビルドが失敗し(自動ナイトリービルド)、メッセージが表示され、他のすべてのナイトリービルドも失敗しました。どういうわけか、これによりハドソンは問題が解決するまで失敗したすべてのプロジェクトを継続的に構築しました。これにより、問題が魔法のように消える土曜日の夜まで、すべてのプロジェクトのビルドが30分ごとに行われました。
version-control - ビルド ツールとライブラリをバージョン管理する方法は?
ソース管理システム自体にコンパイラ、ライブラリ、およびその他のツールを含めるための推奨事項は何ですか?
過去に、私はすべてのソース コードを持っていたにもかかわらず、製品の古いバージョンをビルドすることは、Visual Studio、InstallShield、およびその他のツール (を含む製品のビルドに使用される正しいパッチ バージョン)。次のプロジェクトでは、これらのビルド ツールをソース管理にチェックインし、それらを使用してビルドすることで、これを回避したいと考えています。これにより、新しいビルド マシンの設定も簡単になります。1) ソース管理ツールをインストールし、2) 適切なブランチを指定し、3) ビルドします。それだけです。
私が検討したオプションは次のとおりです。
- インストール CD ISO をソース管理にコピーする - 古いバージョンに戻らなければならない場合に必要なバックアップを提供しますが、「ライブ」で使用するには適していません (各ビルドはインストール手順から開始する必要があります)。 、1 時間のビルドを 3 時間に簡単に変えることができます)。
- ソース管理へのソフトウェアのインストール。ClearCase はブランチをドライブ文字にマップします。このドライブの下にソフトウェアをインストールできます。これは、レジストリ設定など、ツールのインストールのファイル以外の部分を考慮していません。
- すべてのソフトウェアをインストールし、仮想マシン内でビルド プロセスをセットアップし、仮想マシンをソース管理に保存し、起動時に VM でビルドを実行する方法を見つけます。「ビルド マシン」の状態を簡単にキャプチャできますが、VM のオーバーヘッドが発生し、「開発者が同じツールを使用できるようにする」という問題には役立ちません。
構成管理の基本的な考え方のように思えますが、これを行う方法についてのリソースを追跡できませんでした。提案は何ですか?
firefox - Firefox 拡張機能にどのように署名しますか?
私は Firefox 用の拡張機能をいくつか開発しましたが、拡張機能に署名を付けるのが非常に難しいことに悩まされています。拡張機能が署名されていない場合、インストール時に「作成者が検証されていません」と表示されますが、私にはそれが間違っているように見えます。
ソースから .xpi ファイルをビルドする簡単なビルド スクリプトと、PKZip のライセンス コピー (多くのチュートリアルによれば、Firefox が必要とする署名付き xpi ファイルをビルドするために必要) がありますが、見つかりませんでした。実際に機能する無料/安価な証明書またはトリックを実行する一連の指示を取得する方法。
私の拡張機能は無料なので、商用の証明書に 400 ドルも費やしたくありませんが、50 ドル程度を費やしてもかまいません。私は Linux と Windows の両方のマシンを持っていますが、私のビルド スクリプトは現在 Windows を使用しており、それが最も使いやすいでしょう。
これをどのように解決しましたか?拡張機能のビルド時に自動的かつ安全に署名するにはどうすればよいですか?
編集: Google のヒットには感謝していますが、それらが提供する手順は、実際に機能する証明書を取得する方法について十分ではありません。私が得る感覚は、この古典を思い出させます:
batch-file - 戻りコードをエラー メッセージに変換する .cmd および .bat ファイル
.cmd ファイルを介してテスト スイートで作成したプログラムを自動化しようとしています。
%errorlevel% を介して、実行したプログラムのリターン コードを取得できます。
私のプログラムには、エラーの種類ごとに特定の戻りコードがあります。
例えば:
1 - そのような理由で失敗したことを意味します
2 - 他の理由で失敗したことを意味します
...
echo FAILED: テスト ケースに失敗しました。エラー レベル: %errorlevel% >> TestSuite1Log.txt
代わりに、どういうわけか言いたい:
echo FAILED: テスト ケースが失敗しました。エラーの理由: lookupError(%errorlevel%) >> TestSuite1Log.txt
これは .bat ファイルで可能ですか? それとも、python/perl のようなスクリプト言語に移行する必要がありますか?
msbuild - MSBuild が参照先プロジェクトの参照を取得しない
ちょうど今、MSBuild で奇妙な状況に遭遇しました。LibX、LibY、Exe の 3 つのプロジェクトを持つソリューションがあります。Exe は LibX を参照します。次に、LibX は LibY を参照し、いくつかのコンテンツ ファイルを持ち、サードパーティ ライブラリ (GAC とローカル lib フォルダーの両方にインストールされたいくつかのビルド済みアセンブリ) への参照も持っています。サードパーティ ライブラリは「ローカル コピー」(「プライベート」) としてマークされ、LibY の出力および LibX のコンテンツ ファイルと同様に、LibX プロジェクトの出力に表示されます。現在、Exe プロジェクトの出力には、LibX プロジェクトの出力、LibX プロジェクトのコンテンツ ファイル、LibY プロジェクトの出力 (LibX からのもの) が含まれていますが、サードパーティ ライブラリのアセンブリは含まれていません。
Exeプロジェクトでサードパーティのライブラリを直接参照することでこれを回避しましたが、これが「正しい」ソリューションだとは思いません。
以前にこの問題を抱えていた人はいますか?
.net - すべてのプロパティ名/値を表示する NAnt タスクはありますか?
ビルド中に現在設定されているすべてのプロパティ名と値をエコーアウトする NAnt タスクはありますか? Ant のechopropertiesタスクに相当するものでしょうか?
ruby - レイヴン使ったことある人いますか?
このビルドツールについてどう思いますか? maven2からravenへの移行を考えているのですが(ポンポンがどんどん大きくなっています)、まずは意見をお聞きしたいです。
ありがとう!
@アンドレ:
書いていただきありがとうございますが、私は実際にレイヴンを使った実際の経験を探していました. とにかく、誰も書いていないこと自体が指標です(使っている人は少ないようです)
.net - 動的言語ベースの .NET ビルド ツールはありますか?
近いうちに .NET で新しいプロジェクトを開始する可能性があり、Nant や MSBuild などの XML ベースのビルド ツールは使用したくありません。私は Rake が好きですが、gant や BuildR for Java と精神的に似た .NET 動的言語 (Boo など) に基づいたものの方が良いのではないかと考えています。.NETにそのようなものはありますか? そうでない場合、何をお勧めしますか?