32

通常のコンパイル、ビルド、テストの実行などのタスク以外のビルド自動化中に、他の人が何をしているかを知りたいと思っています。

  • コード ドキュメントの生成
  • コード メトリクスを使用してビルドの品質を測定し、確立されたメトリクスに違反している場合はビルドを失敗させます。
4

31 に答える 31

43

すべての主要なアンチウイルスエンジンに対するウイルススキャンのために、実行可能ファイルをhttp://virustotal.comに送信します。

私たちのexeにはウイルスが含まれているとは思いませんが、誤検知が発生し、それを見つけた顧客になりたくない場合があります。8-)

于 2009-05-29T12:08:38.557 に答える
21

ツイッターアカウントを持っているので、いつでもどこからでもステータスを確認できます

于 2009-05-29T12:11:08.380 に答える
20

押されたときにビルドを起動するために接続した Staples easy ボタンがあります。

于 2009-05-29T12:56:42.967 に答える
16

コードに散らばっている可能性のある TODO/FIXME などのレポートを作成します。

于 2009-05-29T12:33:43.200 に答える
15

以下に、私が行ったこと、行うこと、または行う予定のいくつかのことを示します。

  • 信号機を (X10 ガジェットを使用して) 更新して、ビルド ステータスを示します (緑 = 良好、黄色 = 建物、赤 = おっと!)。
  • コード ドキュメントを生成し、プロジェクト wiki をドキュメントで更新します。
  • 現在のバージョン番号の投稿、ダウンロード リンクの提供など、その他のプロジェクト wiki の更新。
  • 手動テストが行​​われるテスト サーバーにデプロイ (および必要に応じてロールバック) します。私は通常、VMWare を使用してこれを行ってきたので、「展開」は実際には新しい VM インスタンスの作成です。
  • 「ビルド保留中」のチケットをテストのために QA に自動的に移動します。
  • 失敗したテスト、失敗したビルド、およびコンパイラの警告に関する欠陥レポートを作成します。
  • バージョン管理でビルドにタグを付けます (バージョン情報も適用します)。
  • Y 日以内にビルドが X 回以上失敗した場合にレビューをスケジュールします。(例: 1 週間に 3 回失敗した場合、何が起こっているのかを把握するために会う必要があります)
  • エラーのない週に「ピザとビール」パーティーをスケジュールします。
  • 大声で「カチン!」と再生します。新しい販売につながることがわかっている機能が完了するたびに、PA システムでサウンドを鳴らします。私の古い会社では、私たちの営業グループはこの役に立たない機能を気に入っていました:)。
于 2009-05-29T12:21:41.820 に答える
12

failblog.comからランダムな画像を取り出して、「ビルドに失敗しました」というメールに添付します。

于 2009-07-16T01:55:11.377 に答える
7

問題のワークフローを自動的に進めます。

ビルドに関連するすべての JIRA の問題 (svn コミット コメントから判断) を収集し、JIRA でステータスをチェックするカスタム プラグインを Bamboo CI サーバーに作成しました。

ビルドが成功すると (そして実行中のサーバーにアプリがデプロイされると)、「ビルド待ち」ワークフロー ステージの問題は、自動的に「ビルド済みでテスト可能」ステージに進み、電子メールの送信がトリガーされます。問題に割り当てられたテスター。

これは、開発者がコードをチェックインしたときではなく、サーバー上で修正がライブで実行され、テスターが実際に何かを実行できるときに、テスターが問題通知メールを受け取ることを意味します。

于 2009-05-29T14:25:11.713 に答える
6

Webサイトを直接デプロイして、デプロイメントサーバーをテストします。

于 2009-05-29T12:14:17.577 に答える
4

作成するすべてのバイナリにデジタル署名を適用します。ビルドスクリプトはそれを自動的に行います。

于 2009-05-29T12:07:01.087 に答える
4

いくつかのこと。

  1. pdb を Symbol/Source Server にアップロードします <- winqual クラッシュ ダンプのデバッグに非常に役立ちます
  2. CC.NET を介してVMにデプロイされたインストーラーでテストを実行する
  3. CC.NETを介してテストするためのベース VM を作成し、それをすべての QA に展開します
  4. その VM イメージのコピーを取得し、 EggPlantを使用して自動化された UI テストを実行します
于 2009-05-29T12:58:49.500 に答える
3

SVG スプラッシュ スクリーンのバージョン番号を置き換えてから、 Inkscape でレンダリングします。

于 2009-05-29T14:01:33.693 に答える
2

私が携わってきたさまざまなプロジェクトでは、最後にチェックインしたのは誰か、ビルドを壊したのは誰かという大規模な公開展示がありました。Build-o-maticでこれを行い、 Team Cityのビルドについて同じ情報を表示するようにTeam Piazzaを作成しました。

于 2009-05-29T12:32:04.983 に答える
2

Web アプリがあり、パフォーマンス テストを行い、HTML/CSS 検証をテスト スクリプトに追加します。

于 2009-05-29T12:41:11.203 に答える
2

マネージド コード:

  1. 一貫したバージョンですべての AssemblyInfo ファイルを更新する
  2. StyleCop と FxCop を実行して、コードが美しく、適切に動作していることを確認してください。

ネイティブ コード:

  1. バイナリ全体で depends.exe を実行し、デバッグ ランタイムへの依存関係が侵入していないことを確認します - 非常に頻繁に発生します
  2. manifest.exe を使用してマニフェスト ファイルをダンプし、デバッグの依存関係を確認します。これらはどこにでもあります。
  3. SWIG を使用して C++ コードの Python バインディングを生成する
于 2009-05-29T12:54:37.823 に答える
2

Java 開発では、以下を使用します。

  • Cobertura によって補完された JUnit (Cobertura は、コードのどの部分がテスト カバレッジに欠けているかを特定します)
  • Find Bugs - バグや脆弱性を探してコードを精査するツール
  • ソフトウェアのビルドとテストを管理する Hudson ツール (hudson.dev.java.net を参照 [まだハイパーリンクを投稿できません!])。これには、AoP の (上記の) 信号機のような機能があります - 青 - 成功したビルドとすべての単体テストに合格、黄色 - 成功したビルドといくつかの単体テストに失敗、赤 - ビルドに失敗しました。

ハドソンも

  • SVN、Continuus などへのプラグインを介してソフトウェア構築を管理します
  • すべてのビルドの履歴を維持 - Junit テストとバグの検索結果を傾向グラフに表示できるようにします
  • ビルドの状態が変化するたびに、すべての関係者に電子メールを送信します (例: 青から黄、赤から青)
  • すべての情報は、シンプルな内部 Web ページに表示されます
于 2009-05-29T12:57:04.667 に答える
2

BizTalk 2006 プロジェクトを構築します :)

于 2009-06-07T15:10:26.437 に答える
1

ビルド時のタイムスタンプを各ビルドイメージに埋め込むのはどうですか?

<ItemGroup>
  <StampFile   Include="BuildTimestamp.cs"/>
</ItemGroup>

<Target Name="BuildTimestamp" 
        Outputs="@(StampFile)">
  <Message Text="Building Timestamp..." />
  <Touch
     AlwaysCreate = "true"
        Files="@(StampFile)" />

    <WriteLinesToFile
        File="@(StampFile)"
        Lines='public static class Build { public static string Timestamp = "%(StampFile.CreatedTime)" %3B }'
        Overwrite="true"/>
</Target>

これを拡張して、マシン名、月の満ち欠けなどを含めることができます。

于 2009-06-09T20:39:19.637 に答える
1

私たちはたくさんのことをします:MSBUILDで

  • ソースの取得
  • ファイル情報とバージョン情報のタイムスタンプと最後の変更セットでアセンブリ情報を更新します
  • コンパイル:)
  • ガリオでテストを実行する
  • 現在のタイムスタンプを使用してテストレポートを作成し、IISで公開します
  • 必要なすべてのバイナリのZipパッケージを作成します
  • SVNでZipパッケージを公開する
  • SLNファイルをTFSからバインド解除します
  • すべてのbin/objファイルを削除します
  • SVNでソースコードを公開する
  • ビルドの成功または失敗後にメールを送信する
  • NANTスクリプトを使用してアプリケーションをデプロイする
于 2009-11-03T10:07:24.290 に答える
1

構成ファイルの更新について誰も言及していないことに本当に驚いています! ビルド スクリプトを使用して構築している環境に基づいて、構成ファイル b を更新します。これにより、connectionStrings と appSettings をすべて置き換えるのにかかる時間が少なくとも 20 分短縮されます。私たちが行うその他のことは次のとおりです。

バージョン番号を更新
する テスト サーバーに移動する
コード分析を実行
する ビルド ステータスを電子メールで送信する
データベース スクリプトを実行する

于 2009-07-17T20:26:37.707 に答える
1

ここで回答の半分以上を読んでいませんが、これらのいくつかが「新しい」ものであることを願っています:

  • 古いバージョンをインストールおよびアップグレードして、新しいインストールとのファイルの違いを確認します (デプロイ アップグレード構成をテストします)。
  • コア アプリケーションと外部システム アダプターをカスタム Jboss (プロジェクト/リリースに含まれる) にデプロイし、それを起動して SoapUI テスト スイートを実行し、エンド ツー エンドの機能を検証します (デプロイ自動化のための追加テストでもあります)。
  • デルタ スクリプトを以前のデータベース バージョンに適用し、新しいインストールと構造を比較して、アップグレード中に新しいテーブル、列などが作成されるようにします。
  • トランクからの次のリリースのプレビューとして、Confluence でリリース ドキュメントを公開します (基本的に、完全なリリース スクリプトを毎晩実行します)。
于 2009-08-03T14:19:43.990 に答える
1

「checkstyle」 ( http://checkstyle.sourceforge.net/anttask.html ) を使用して、開発者がビルドする前に (正式に) レビューされず、新しくチェックインされる可能性があるコードのレポートを生成します。また、次のことを行ういくつかのカスタム タスクを作成しました。

  1. DB 接続プロパティを確認し、DB (単純な JDBC コード) への実際の接続を試み、ユーザー資格情報の問題などがあるかどうかを報告します。
  2. 最後のビルドのユーザー名とタイムスタンプをコードに追加します
  3. ビルドのステータスとともに、Corporate IM Client (カスタム リスト) に通知を送信します。

他にもいくつかのタスクがありますが、それらは内部環境関連の設定に固有のものです。

于 2009-06-14T08:11:41.457 に答える
1

Java の場合、Ivy を使用して不足しているライブラリを自動的に取得することもできます。たとえば、Hibernate を使用している場合、これらのライブラリをリリースに含める場合と含めない場合があります。

于 2009-05-29T14:21:49.240 に答える
1

ビルドと SVN に自動的にタグを付け、アプリケーションを WebSphere アプリケーション サーバーにデプロイするビルド スクリプトがありました。

于 2009-05-29T13:03:52.047 に答える
1

ここで何度も言及したバージョン管理、署名、テストなどとは別に、次のことも行います。

  • sharepoint -dll のspdisposeCheckを実行します。
  • sigcheck (sysinternals から) を実行して、バージョンと適用された証明書の概要を作成します。
于 2009-12-03T12:40:45.297 に答える
1

ビルド後のステップでテスト データベースをリセットします。

  • ファイルのセットを準備する ( TemplateFileタスクを使用)

これらのファイルを使用して

  • テストデータベースを削除
  • 中央データベースのバックアップを取る
  • 新しいテスト db インスタンスに復元します
  • テスト データベースで初期化 SQL スクリプトを実行する ( Sql.Executeタスクを使用)
  • ( Xml.XslTransformタスクを使用して) xml データ ファイルを sql ファイルに変換します (挿入)
  • それらをテストデータベースで実行します

この後、正しいスキーマ、中央データベースからのすべての固定データ、およびいくつかの追加のテストデータを備えた、クリーンなテストデータベースができました。

スキーマと固定データも同等のデータと SQL ファイルにあるとよいのですが、それは WIP です。中央データベースはまだありませんが、ソース管理されているはずです。

于 2009-05-29T14:26:00.713 に答える
1

NDepend、Gandarme などの単体テストとコード分析ツールの実行。結果はCC.Netによって公開されています

于 2009-05-29T14:48:39.123 に答える
1

ビルドサーバーでエラーが発生したかどうかを示すNabaztag /tagがあります。

于 2009-06-16T07:36:05.550 に答える
1

私たちが行ったいくつかのこと:

  1. すべての exe ファイルにデジタル署名する
  2. pdb のアーカイブ
  3. WIX を使用してインストーラーを作成する
  4. CD または DVD で配布されるソフトウェアの完全な .iso ファイルを作成する
于 2009-06-12T14:15:42.550 に答える
-3

他の差し迫った締め切りに取り組んだり、電子メールに追いついたりしています (ちょっと待ってください、それはクールでも興味深いものでもありません...) わかりました、私が実際に行っていることは次のとおりです:

于 2009-05-29T12:36:43.710 に答える