O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Team Founfation Server / Visual Studio Online ハンズオン トレーニング手順書

3.901 visualizações

Publicada em

2015年10月7日時点の手順書です。

Publicada em: Software
  • Dating for everyone is here: ♥♥♥ http://bit.ly/36cXjBY ♥♥♥
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • Dating direct: ❤❤❤ http://bit.ly/36cXjBY ❤❤❤
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui

Team Founfation Server / Visual Studio Online ハンズオン トレーニング手順書

  1. 1. セミナー&ハンズオン ラボ シリーズ Visual Studio ハンズオン トレーニング Team Foundation Server/ Visual Studio Online 編 日本マイクロソフト株式会社 デベロッパー エバンジェリズム 統括本部 Last updated: 2015/10/5
  2. 2. 2 もくじ 概要........................................................................................................................................................4 演習内容.................................................................................................................................................4 ハンズオン ラボの演習環境について...................................................................................................5 演習 1 : Visual Studio Online へのサインアップ................................................................................6  タスク 1 : Visual Studio Online アカウントの作成 ...........................................................................................................6 演習 2 : チームプロジェクトの作成....................................................................................................9  タスク 1 : Visual Studio を開く ............................................................................................................................................9  タスク 2 : リポジトリをダウンロード.............................................................................................................................11 演習 3 : ソリューションの作成とソース管理へ追加........................................................................ 13  タスク 1 : ソリューションのダウンロード.....................................................................................................................13  タスク 2 : テストプロジェクトの作成.............................................................................................................................17  タスク 3 : ソリューションをソース管理に追加.............................................................................................................21 演習 4 : ユニットテストの作成......................................................................................................... 23  タスク 1 : ユニットテストの作成.....................................................................................................................................23 演習 5 : Visual Studio Online でのチケット管理............................................................................. 28  タスク 1 : Visual Studio Online におけるチケットの流れを理解する .........................................................................28  タスク 2 : Visual Studio から Visual Studio Online のチケットを操作する ................................................................31  タスク 3 : Excel から Visual Studio Online のチケットを操作する...............................................................................34 演習 6 : Visual Studio Online でのチケット管理に紐づいた変更.................................................... 39  タスク 1 : Visual Studio Online におけるチケットの流れを理解する .........................................................................39 演習 7 : 継続的インテグレーションによるエラーの検知................................................................ 49  タスク 1 : 継続的インテグレーション用ビルド定義を作成する.................................................................................49  タスク 2 : 作成したテストの実行確認.............................................................................................................................59  タスク 3 : 継続的インテグレーションでのエラー検知.................................................................................................62 演習 8 : ゲートチェックインによるエラーの検知........................................................................... 75  タスク 1 : 継続的インテグレーション用ビルド定義の無効化.....................................................................................75  タスク 2 : ゲートチェックイン用ビルド定義の作成.....................................................................................................78  タスク 3 : ゲートチェックインによるエラー検知.........................................................................................................84 演習 9 : 付録 新しいビルドシステムで継続的インテグレーションを実施する............................100  タスク 1 : 継続的インテグレーション用ビルド定義を作成する...............................................................................100  タスク 2 : ビルド定義を編集する...................................................................................................................................105  タスク 3 : ビルドを実行する...........................................................................................................................................112 まとめ................................................................................................................................................114
  3. 3. 3 参考リソース.....................................................................................................................................114
  4. 4. 4 概要 Team Foundation Server/Visual Studio Online を使用すると、コードのホスト、プロジェクトの計画と追跡、チーム メ ンバーとのコラボレーションができ、より良いソフトウェアをリリースできます。Visual Studio Online が実現するクラ ウド ベース ALM ソリューションでは、ソースコードの管理から、課題のトラッキング、ロード テスト、自動ビルド まで、ソフトウェア開発のすべての工程で必要なソリューションが提供されます。主要な各 IDE と統合されており、最 大の利点はほぼどこからでもアクセスできることです。 このハンズオントレーニングでは、Visual Studio Online と Visual Studio を使った開発方法の例を学ぶことができます。 演習内容 このハンズオン ラボでは以下のことを学習します。  複数人で開発している Windows アプリケーションを Visual Studio Online で管理する  Visual Studio Online のタスク管理や自動テスト、継続的インテグレーションを利用する このハンズオン ラボの所要時間:約 60 分~90 分
  5. 5. 5 ハンズオン ラボの演習環境について 本ハンズオン ラボの演習環境には Visual Studio 2015 Enterprise がインストールされています。ご自宅などの環境で演 習を進める場合は Visual Studio 2015 Enterprise / Pro 評価版などをインストールしてください。  Visual Studio 2015 http://www.visualstudio.com/downloads/download-visual-studio-vs
  6. 6. 6 演習 1 : Visual Studio Online へのサインアップ タスク 1 :Visual Studio Online アカウントの作成 このタスクでは、Visual Studio Online のサインアップおよび最初のチームプロジェクト作成手順を解説します。本タス クはサインアップ時のみ必要になります。 1. ブラウザーで https://www.visualstudio.com/ja-jp にアクセスし、[サインイン]をクリックします。
  7. 7. 7 2. Visual Studio Online のサインイン画面が表示されます。Microsoft アカウントおよびパスワードを入力して[サイ ンイン]をクリックします。 3. Visual Studio Online のアカウントを作成します。アカウントの URL を入力し[アカウントの作成]をクリックしま す。アカウントの URL は後で変更ができませんので注意してください。
  8. 8. 8 4. 最初のチームプロジェクトを作成します。[Project name]にチームプロジェクト名 VSOHOL を入力し、[Process template]から使用するプロセステンプレートを選択します。ここでは[Agile]を選択します。最後にバージョン 管理ツールで[Team Foundation Version Control]を選択します。入力および選択したら[Create project]をクリ ックします。 5. プロジェクトの作成が完了すると、下記画面が表示されますので、画面右上の[✕]をクリックします。チームプロ ジェクトのポータル画面が表示されます。
  9. 9. 9 演習 2 : チームプロジェクトの作成 タスク 1 :Visual Studio を開く このタスクでは Visual Studio を開き、ソース管理のリポジトリをダウンロードします。 1. Visual Studio Online のポータルページから[Open Visual Studio]をクリックします。
  10. 10. 10 2. 確認のダイアログが表示されるので[許可]をクリックします。 3. Visual Studio が開きます。
  11. 11. 11 タスク 2 :リポジトリをダウンロード 1. Visual Studio のチームエクスプローラーで[次のワークスペースのマッピングを構成し]をクリックします。 2. ワークスペースをダウンロードするパスを指定し[マップを取得]をクリックします。パスは C:¥VSOHOL と します。 メモ: ワークスペースは Visual Studio Online 上のリポジトリをコンピューター上のフォルダーにダウンロードす る場所です。
  12. 12. 12 3. ソース管理のリポジトリからファイルがダウンロードされました。
  13. 13. 13 演習 3 : ソリューションの作成とソース管理へ追加 Visual Studio でソリューションを作成し、Visual Studio Online のソース管理リポジトリに登録します。ソース管 理に登録することで、ファイルの変更履歴を管理できます。今回は単体テストプロジェクトも同時に作成します。 単体テストプロジェクトをソース管理に登録することで、Visual Studio Online 上での自動ビルドに加えて自動テ ストが可能になります。また、チェックインビルドの機能とあわせることで、すべてのテストに成功したコード のみがソース管理に追加されるようになります。 タスク 1 :ソリューションのダウンロード 1. http://1drv.ms/1LmiJuB から SampleWinForm.zip をダウンロード・展開し、作成された SampleWinForm フ ォルダーを C:¥VSOHOL にコピーします。そして、メニューから[ファイル]-[開く]-[プロジェクト]を選択しま す。
  14. 14. 14 2. C:¥VSOHOL¥SampleWinForm にある SampleWinForm のソリューションファイルを選択して [開く]をクリッ クします。 3. セキュリティ警告が表示されますが、[OK]をクリックします。
  15. 15. 15 4. ソリューションおよび Windows フォーム アプリケーションプロジェクトが表示されます。 なお、デバッグ実行すると以下の計算アプリケーションが表示されます。
  16. 16. 16 5. ソリューションエクスプローラーをクリックし、さらにソリューションを右クリックします。ポップアップメニ ューから[ソリューションをソース管理に追加]をクリックします。いくつかポップアップウインドウが表示され ますが、[OK]をクリックします。
  17. 17. 17 タスク 2 :テストプロジェクトの作成 1. ソリューションを右クリックし、ポップアップメニューから[追加]-[新しいプロジェクト]をクリックします。
  18. 18. 18 2. [ イ ン ス ト ー ル 済 み ] - [Visual C#] - [ テ ス ト ] か ら [ 単 体 テ ス ト プ ロ ジ ェ ク ト ] を 選 択 し 名 前 を SampleWinFormTest と入力して[OK]をクリックします。.NET Framework のバージョンが、「.NET Framework 4.5.1」になっていない場合は変更してください。 3. 単体テストプロジェクトが追加されました。
  19. 19. 19 4. 続いて、単体テストプロジェクトに Windows フォーム アプリケーションプロジェクトのクラスをテストでき るようにするために参照を追加します。単体テストプロジェクトの[参照設定]を右クリックしてポップアップメ ニューから[参照の追加]をクリックします。 5. [ソリューション]-[プロジェクト]から[SampleWinForm]にチェックをして[OK]をクリックします。
  20. 20. 20 6. 単体テストプロジェクトの参照設定に[SampleWinForm]が追加されれば完了です。
  21. 21. 21 タスク 3 :ソリューションをソース管理に追加 作成したソリューションおよびプロジェクトをソース管理に追加します。 1. チームエクスプローラーのホームを開き[保留中の変更]をクリックします。
  22. 22. 22 2. [含まれる変更]にはソース管理に追加されるファイルの一覧が表示されます。[コメント]に追加、変更理由に新規 ソリューションの作成と入力して[チェックイン]をクリックします。 3. チェックインの確認画面が表示されますので[はい]をクリックします。今後、チェックインボタンをクリックし たらそのままチェックインを行いたい場合には[今後このメッセージを表示しない]にチェックを入れます。
  23. 23. 23 演習 4 : ユニットテストの作成 タスク 1 :ユニットテストの作成 このタスクでは、最初に作成したテストプロジェクトの中にある UnitTest1.cs を、テスト対象に合わせた名称に 変更します。今回は Calculator クラスに対するテストクラスなので、CalculatorTest.cs に変更します。 1. 左ペインの[ソリューション エクスプローラー]タブをクリック後、 [UnitTest1.cs]を右クリックし、[名前の変更] を選択します。
  24. 24. 24 2. ファイル名が編集可能状態になるので、CalculatorTest.cs に変更後、Enter キーを押します。 名称変更の確認画面が表示されるので、[はい]をクリックします。 3. 以下のようにテストメソッドの内部ロジックを作成します。http://1drv.ms/1MH1QhF の CaluculatorTest.txt の 内容をコピー&ぺーストします。 メモ: テストメソッド名はテスト内容が簡単にわかるようにしておくと、後でテスト結果を参照するときにどんな 処理でエラーになったかがわかりやすくなります。
  25. 25. 25 4. 作成したテストが正常終了することを確認します。メニューから[テスト]-[実行]-[すべてのテスト]を選択する と、今作成したテストが実行されます。 テスト結果は[テスト エクスプローラー]に表示されます。初期状態では、テスト エクスプローラーは左ペイン に格納された状態ですので、左端にある縦書きの[テスト エクスプローラー]をクリックします。 全てのテストが正常であれば、[成功テスト]のところに、作成した4件のテスト結果が緑で表示されます。 メモ: 左ペインに「テスト エクスプローラー」がない場合は、メニューから[テスト]-[ウィンドウ]- [テスト エクスプローラー]を選択すると表示されます。
  26. 26. 26 5. 一旦ソースコードをチェックインします。左ペインの[チーム エクスプローラー]をクリックし、家のマークの ホームアイコンをクリック後、[保留中の変更]を選択します。 6. [コメント]欄に ユニットテスト作成 と入力し、[チェックイン]をクリックします。
  27. 27. 27 チェックインが正常に終了すると、チーム エクスプローラーに「変更セット ○が正しくチェックインされまし た。」と表示されます。(○には任意の番号が入ります。)
  28. 28. 28 演習 5 : Visual Studio Online でのチケット管理 Visual Studio Online では、ユーザーの要件を自然言語のまま管理し、さらに要件を具体的な作業項目として要件に関連 付けて管理する機能が用意されています。作成された作業項目はチケットとして扱うことができるので、チケット管理 とコードのチェックインを関連付けることで、作業項目への対応として変更したソースの追跡がしやすくなります。逆 に、ユーザーの要件を実現するために変更したコードの一覧を列挙することも簡単になります。 タスク 1 :Visual Studio Online におけるチケットの流れを理解する このタスクでは、Visual Studio Online におけるチケットの流れを解説します。 1. Web ブラウザーを立ち上げ、Visual Studio Online 上の VSOHOL のポータル画面を開きます。 2. ポータル画面を開いたら、[WORK]をクリックします。
  29. 29. 29 3. VSOHOL は[Process template]に[Agile]を選択して作成しました。試しに[User Story]を作成してみましょう。 [Title]に Visual Studio Online におけるチケットの流れを理解すると入力し、[Add]をクリックします。 4. [User Story]として[Visual Studio Online におけるチケットの流れを理解する]が作成されました。作成した項目 をダブルクリックをすると詳細画面が表示されます。作成直後は[State]が[New]になっています。[VisualStudio Online におけるチケットの流れを理解する]という[User Story]に着手しましたから、[Visual Studio Online にお けるチケットの流れを理解する]の[State]を変更しましょう。[Visual Studio Online におけるチケットの流れを 理解する]をダブルクリックし、 [State]を[Active]に変更後、[Save]をクリックします。
  30. 30. 30 5. [Visual Studio Online におけるチケットの流れを理解する]がやり終わりましたので、続いて[State]を[Close]に 変更し、[Save and Close]をクリックします。 6. 画面上から[Visual Studio Online におけるチケットの流れを理解する]のチケットが削除されます。 このように、Visual Studio Online においてチケットは[NEW]→[Active]→[Close]という流れで進めていきます。[New]は やらなければいけない状態、[Active]はやっている最中の状態、[Close]はやり終わった状態になります。Todo、Doing、 Done と読み替えても良いでしょう。今回は[State]だけを変更していきましたが、作業に慣れてきたらかかった時間や関 連しているチケットといった付属する情報を記載しておくと良いでしょう。
  31. 31. 31 タスク 2 :Visual Studio から Visual Studio Online のチケットを操作する Web ブラウザーを使えば、Visual Studio Online のポータル画面からチケットを操作することが可能です。では、Visual Studio で開発を行っているエンジニアはチケットを操作するために、必ず Web ブラウザーを使わなければならないの でしょうか? いいえ、そんなことはありません。このタスクでは、Visual Studio から Visual Studio Online のチケット を操作する手順を解説します 1. Visual Studio を立ち上げ、[チーム エクスプローラー]を開き、[作業項目]をクリックします。 2. [新しい作業項目]をクリックし、[User Story]をクリックします。
  32. 32. 32 3. <Enter title here>をクリックし、[Visual Studio から Visual Studio Online のチケットを操作する]と入力後、 Ctrl+S キーで保存します。 4. Web ブラウザーを立ち上げ、Visual Studio Online 上の VSOHOL のポータル画面を開き、[WORK]をクリックす ると、[User Story]として[Visual Studio から Visual Studio Online のチケットを操作する]が作成されています。
  33. 33. 33 5. Visual Studio から Visual Studio Online のチケットを操作できたので、このチケットを Close しましょう。Visual Studio から[Visual Studio から Visual Studio Online のチケットを操作する]の[State]を[Close]に変更し、Ctrl+S キーで保存します。 このように、エンジニアは Visual Studio から離れることなく、Visual Studio Online のチケットを操作することが可能で す。そのため、Visual Studio を使うエンジニアと Visual Studio を使わない人の双方が自分の使うツールから離れること なく、チケットを共有できるのです
  34. 34. 34 タスク 3 :Excel から Visual Studio Online のチケットを操作する Web ブラウザー、Visual Studio、どちらも Visual Studio Online のチケットを 1 つ 1 つ操作しています。日々の操作では それでも問題はありませんが、これではプロジェクトの初期に大量にチケットを登録する際にとても時間がかかってし まいます。そんな時に役に立つのが、Excel です。このタスクでは、Excel から Visual Studio Online のチケットを操作す る手順を解説します。 ※Excel から Visual Studio Online のチケットを操作するためには、Visual Studio をインストールするか、Team Explorer を別途インストールする必要があります。 1. Excel を立ち上げ、[チーム]タブから[新しい一覧]をクリックします。 2. [チーム プロジェクト(T)]から[VSOHOL]を選択し、[接続]をクリックします。
  35. 35. 35 3. [入力リスト(I)]を選択し、[OK]をクリックします。 4. それでは Excel から発行するチケットの内容を記載しましょう。[Title]の欄に[Excel から Visual Studio Online のチケットを操作する]と[Visual Studio で行った変更にチケットを紐づける]と入力し、[Work Item Type]の欄 にどちらも[User Story]を選択します。 5. [チーム]タブから[公開]をクリックします。
  36. 36. 36 6. すると、[ID]の列に数字が入ります。この ID は Visual Studio Online で直前に発行したチケットの ID と連番にな っていることを確認してください。 7. [User Story]に紐づく[Task]を登録してみましょう。[Visual Studio で行った変更にチケットを紐づける]を選択し た状態で、[チーム]タブから[子の追加]をクリックします。 8. [ツリーリストに変換]ダイアログが表示されるので、[ツリーを作成するリンクの種類を選択]を[Parent-Child]の まま、[変換]ボタンを押します。
  37. 37. 37 9. すると、新しい列として[Title 2]が以下のように追加されます。 10. [Visual Studio で行った変更にチケットを紐づける]に[Task]を紐づけたいので、その下の行の[Title 2]に[ソース コードに変更を加える]を入力し、[Work Item Type]に[Task]を選択します。 11. [チーム]タブから[公開]をクリックします。
  38. 38. 38 12. Excel から Visual Studio Online のチケットを操作できたので、[Excel から Visual Studio Online のチケットを操 作する]のチケットを Close しましょう。 [Excel から Visual Studio Online のチケットを操作する] の[State]を[Close]にし、[Reason]を[Acceptance tests pass]を選択します。 13. [チーム]タブから[公開]をクリックします。 このように、Excel から Visual Studio Online のチケットを操作することで、手軽に大量のチケットの登録/更新を行える ようになります。また、Excel に Visual Studio Online で管理しているチケットのデータを容易に取得できるため、チケ ットの状態を分析する際にも役に立ちます
  39. 39. 39 演習 6 : Visual Studio Online でのチケット管理に紐づいた 変更 この演習を通じてソース コードのチェックインとチケットの関連付けを行うことを学習します。 タスク 1 :Visual Studio Online におけるチケットの流れを理解する コードの変更やドキュメントを修正する際、その作業のトリガーとなったチケットがあります。トリガーとなったチケ ットとコードの変更やドキュメントの修正の間には関連性があります。そのため、コードの変更やドキュメントを修正 と作業のトリガーとなったチケットを紐付ける必要があります。このタスクでは、Visual Studio で行った変更にチケッ トを紐づける手順について解説します 1. Visual Studio の[チーム エクスプローラー]の[作業項目]をクリックし、クエリから[Product Planning]をクリッ クします。
  40. 40. 40 1. [User Story]のチケットの一覧が表示されるので、[Visual Studio で行った変更にチケットを紐づける]をダブル クリック後、[ALL LINKS]をクリックします。 2. [User Story]の[Visual Studio で行った変更にチケットを紐づける]に紐づいている[Task]の[ソースコードに変更 を加える]が今回、ソースコードに変更を加える作業のトリガーとなったチケットになります。
  41. 41. 41 3. では、ソースコードに変更を加えましょう。[ソリューション エクスプローラー]をクリックし、[Calculator.cs] をクリックします。
  42. 42. 42 4. Add の足し算の引数を逆にしただけの Add2 という関数を追記し、保存します。
  43. 43. 43 5. Calculator.cs 上で右クリック後、[チェックイン]をクリックします。
  44. 44. 44 6. コメントに Add2 メソッドの追加と入力し、[ID を指定して作業項目を追加]をクリックします。
  45. 45. 45 7. 先程確認した[Task]の[ソースコードに変更を加える]のチケットの ID を記載し、[追加]をクリックします。
  46. 46. 46 8. コードの変更にチケットを紐づけされたので、[チェックイン]をクリックします。
  47. 47. 47 9. [チェックイン]されました。
  48. 48. 48 10. 紐づけたチケットに変更セットが紐づいているか確認してみましょう。[Product Planning]をクリックし、[ソー スコードに変更を加える]をクリックします。 11. チケットに変更セットの内容が紐づいていることが確認できます。 このように、チケットとコードの変更やドキュメントの修正を紐づけることができます。 チケットとそれに紐づく変更を紐づけることで、後からチケットを見ただけでコードやドキュメントにどんな変更が入 ったのかが容易に追跡できるのです。また、コードの変更やドキュメントの修正がどのチケットがトリガーとなって行 ったのかもコードの変更やドキュメントの修正を見るだけで容易に追跡できるのです。 コードの変更やドキュメントの修正とチケットが対となっているため、リリースの際に必要な変更が漏れていないか、 不必要な変更が混入していないか、といったことが容易に確認できるのです。
  49. 49. 49 演習 7 : 継続的インテグレーションによるエラーの検知 Team Foundation Server/Visual Studio Online では、ソースコードをチェックインするときに自動でビルドを 実行させることができます。(継続的インテグレーション) これにより、エラーのあるソースコードを早期に検知することができるようになります。 タスク 1 :継続的インテグレーション用ビルド定義を作成する このタスクでは、Visual Studio Online に継続的インテグレーション用のビルド定義を登録します。 1. 左ペインの[チーム エクスプローラー]をクリックし、家のマークのホームアイコンをクリック後、[ビルド]を クリックします。 2. 次に[XAML のビルド定義の新規作成]をクリックします。
  50. 50. 50 現在のソリューション名でビルド定義のひな形が Visual Studio に作成されます。 3. 左側の[全般]が選択された状態になっていることを確認して、[ビルド定義名]を 継続的インテグレーション に 変更します。
  51. 51. 51 4. 左側の一覧から[トリガー]を選択し、[次のトリガーの 1 つを選択]から[継続的インテグレーション]を選択しま す。 メモ: 継続的インテグレーションとは、開発者がソースコードをチェックインする度にビルドが行われます。ゲートチェックイ ンはテストが成功しないとチェックインが拒否されます。ゲートチェックインは後の演習で実施します。 5. 左側の一覧にある[ソース]設定を選択します。[作業フォルダー]にある、[ソース 管理 フォルダー]と[ビルド エ ージェント フォルダー] が以下の図になっていることを確認します。
  52. 52. 52 左側の一覧から[ビルド]の既定値を選択します。[ビルド出力を次のソース管理フォルダーにコピーする (このフ ォルダーが存在しない場合は作成されます)]を選択します。 出力先が[$/VSOHOL/Drops]になっていることを確認します。
  53. 53. 53 6. 左側の一覧から[プロセス]を選択し、[詳細の表示]をクリックします。
  54. 54. 54 [既定テンプレート]が選択されていることを確認します。
  55. 55. 55 [ビルドする構成]にフォーカスを設定すると、右端に[…]のボタンが表示されるので、クリックします。 7. [構成]ダイアログが表示されます。[追加]ボタンを押します。
  56. 56. 56 [構成]と[プラットフォーム]が選択可能になります。 8. [構成]の一覧から[Release]、[プラットフォーム]から[AnyCPU]を選択して、[OK]をクリックします。
  57. 57. 57 ビルドテンプレートに[Any CPU|Release]と表示されています。 9. 左側の一覧から[アイテム保持ポリシー]を選択します。 メモ: アイテム保持ポリシーはビルド結果をサーバに最大何回分保存しておくかという設定になります。多くのビルドを保存す ると、ディスクを多く使用しますが、VisualStudioOnline でのディスク制限は現時点で公開されておりません。
  58. 58. 58 10. [保存]アイコンをクリックして、ビルド定義を保存します。 チーム エクスプローラーの[すべてのビルド定義]を確認すると、[継続的インテグレーション]が表示されていま す。表示されていない場合、[最新の情報に更新]をクリックしてください。
  59. 59. 59 タスク 2 :作成したテストの実行確認 作成したテストは、デフォルトの状態でビルド実行時に合わせてテストも実行されますが、まずは手動でビルド を実行し、定義した内容が正しいことを確認します。また、テストを作成した状態でビルドを実行すると、ビル ド結果にテストの実行結果も反映されます。 1. [継続的インテグレーション]を右クリックし、[新しいビルドをキューに配置(I)…]を選択します。
  60. 60. 60 2. 最下部の [キューに登録(Q)] をクリックします。
  61. 61. 61 3. チーム エクスプローラーの[マイビルド]に[継続的インテグレーション キュー内の#○(標準)](○には任意の 数字が入ります)と表示されます。下記のようなアイコンになっていることを確認し、その部分をダブルクリッ クします。 4. Web ブラウザーが起動し、Visual Studio Online にビルドの状態が表示されるので、ビルドが完了するまで待 ちます。
  62. 62. 62 5. ビルド完了後、Summary をクリックすると、ビルド状態の表示内容にテストの実行結果も表示されます。 タスク 3 :継続的インテグレーションでのエラー検知 ここで、わざと計算ロジックを間違えた内容に変更し、継続的インテグレーションにてエラーが検知されること を確認してみます。 1. 左ペインの[ソリューション エクスプローラー]タブをクリックし、ソースツリーから[Calculator.cs]をダブルク リックします。
  63. 63. 63 2. Divide メソッドを以下の内容に変更します。 3. メニューから、メニューから[テスト]-[実行]-[すべてのテスト]を選択します。 [テスト エクスプローラー]に表示されるテスト結果のうち、[商_6 割る 2 は 3 であるべき]が[失敗テスト]の ところに赤で表示されます。
  64. 64. 64 4. 左ペインのチーム エクスプローラーでプロジェクト名の右にある [▼] をクリックして[保留中の変更]をクリッ クします。 5. [コメント]欄に 割り算の変更(テストに失敗する) と入力し、[チェックイン]をクリックします。
  65. 65. 65 チェックインが完了すると、通常の完了メッセージが表示されます。 しかし、裏ではビルドが自動実行されていますので、状況を確認します。 6. 左ペインのチーム エクスプローラーでプロジェクト名の右にある [▼] をクリックして[ビルド]をクリックしま す。
  66. 66. 66 7. [マイビルド]から実行中のビルドをダブルクリックします。 ブラウザーにログが表示されます。実行内容として[継続的インテグレーション]と表示されています。
  67. 67. 67 ビルドが終了すると、テストでエラーとなるため Summary では[ビルドが一部成功しました]という処理結果に なります。 また、どのテストでエラーが発生したかも出力されます。 ビルド時のテストでエラーは発生しましたが、チェックインは完了していますので、チェックイン履歴を確認し てみます。 8. 左ペインのチーム エクスプローラーでホームボタンをクリックして、[ソース管理エクスプローラー]をクリック します。
  68. 68. 68 9. ソース管理エクスプローラーから[VSOHOL]を右クリックし、[履歴の表示]を選択します。 Elastic Build(テナント名)はビルドサーバですので、Elastic Build を除いた、最後の変更セット(チェックイン 内容)のコメントが、先ほどチェックインした際に入力したコメントとなっています。
  69. 69. 69 次に、テストでエラーとなった割り算メソッドを正しく変更します。 10. 左ペインの[ソリューション エクスプローラー]タブをクリック後、 [Calculator.cs]をダブルクリックします。 11. Divide メソッドを以下の内容に変更します。 12. テストが正常終了することを確認します。メニューから[テスト]-[実行]-[すべてのテスト]を選択します。
  70. 70. 70 テスト結果は[テスト エクスプローラー]に表示されます。全てのテストが正常であれば、[成功テスト]のところ に、作成した4件のテスト結果が緑で表示されます。 13. 左ペインの[チーム エクスプローラー]をクリックし、プロジェクト名の右にある [▼] をクリックして[保留中の 変更]をクリックします。
  71. 71. 71 14. [コメント]欄に 割り算メソッドのバグを修正 と入力し、[チェックイン]をクリックします。 裏でビルドが自動実行されていますので、状況を確認します。 15. 左ペインのチーム エクスプローラーでプロジェクト名の右にある [▼] をクリックして[ビルド]をクリックしま す。
  72. 72. 72 16. [マイビルド]から実行中のビルドをダブルクリックします。 ブラウザーに詳細情報が表示されます。
  73. 73. 73 しばらくすると、ビルドが完了します。今回は ビルド成功 と表示されます。 ソースコードのチェックイン状況も確認します。 17. 左ペインのチーム エクスプローラーでホームアイコンをクリックして[ソース管理エクスプローラー]をクリッ クします。
  74. 74. 74 18. ソース管理エクスプローラーから[VSOHOL]を右クリックし、[履歴の表示]を選択します。 最後の変更セット(チェックイン内容)のコメントが、先ほどチェックインした際に入力したコメントとなって います。
  75. 75. 75 演習 8 : ゲートチェックインによるエラーの検知 継続的インテグレーションでチェックイン時にエラーを検知することができるようになりますが、リポジトリにはエラ ーが発生するソースコードが登録されてしまいます。Team Foundation Server/Visual Studio Online では、「ゲートチェ ックイン」という機能でビルドがエラーとなる場合にはチェックインさせないようにすることが可能です。ゲートチェ ックインを使用すると、リポジトリを健全な状態に保つことができます。 タスク 1 :継続的インテグレーション用ビルド定義の無効化 1. 左ペインのチーム エクスプローラーでプロジェクト名の右にある [▼] をクリックして[ビルド]をクリックしま す。
  76. 76. 76 2. XAML のビルド定義にある[継続的インテグレーション]を右クリックし、[ビルド定義の編集(B)…]をクリックし ます。
  77. 77. 77 3. 定義画面が表示されるので、画面下側にある[キューの処理]から[無効]を選択します。 4. 保存ボタンをクリックします。
  78. 78. 78 タスク 2 :ゲートチェックイン用ビルド定義の作成 1. 左ペインのチーム エクスプローラーで XAML のビルド定義の[ビルド定義の新規作成]をクリックします。 2. ビルド定義の設定画面が表示されます。[全般]タブの[ビルド定義名]を ゲートチェックイン に変更します。
  79. 79. 79 3. [トリガー]タブの選択肢から[ゲートチェックイン]を選択します。 4. 左側の一覧にある[ソース]設定を選択します。[作業フォルダー]にある、[ソース 管理 フォルダー]と[ビルド エ ージェント フォルダー] が以下の図になっていることを確認します。 左側の一覧から[ビルド]の既定値を選択します。[ビルド出力を次のソース管理フォルダーにコピーする (このフ ォルダーが存在しない場合は作成されます)]を選択します。
  80. 80. 80 出力先が[$/VSOHOL/Drops]になっていることを確認します。 5. 左側の一覧から[プロセス]を選択し、[詳細の表示]をクリックします。
  81. 81. 81 [既定テンプレート]が選択されていることを確認します。 [ビルドする構成]にフォーカスを設定すると、右端に[…]のボタンが表示されるので、クリックします。
  82. 82. 82 6. [構成]ダイアログが表示されます。[追加]ボタンを押します。 [構成]と[プラットフォーム]が選択可能になります。
  83. 83. 83 7. [構成]の一覧から[Release]、[プラットフォーム]から[AnyCPU]を選択して、[OK]をクリックします。 ビルドテンプレートに[Any CPU|Release]と表示されています。 8. 左側の一覧から[アイテム保持ポリシー]を選択します。
  84. 84. 84 9. 保存ボタンをクリックします。 タスク 3 :ゲートチェックインによるエラー検知 継続的インテグレーションのときと同様に、わざと計算ロジックを間違えた内容に変更し、継続的インテグレー ションとの動作の差異を確認してみます。 1. 左ペインの[ソリューション エクスプローラー]をクリックし、ソースツリーから[Calculator.cs]をダブルクリッ クします。 2. Divide メソッドを以下の内容に変更します。
  85. 85. 85 3. メニューから、メニューから[テスト]-[実行]-[すべてのテスト]を選択します。 [テスト エクスプローラー]に表示されるテスト結果のうち、[商_6 割る 2 は 3 であるべき]が[失敗テスト]の ところに赤で表示されます。 4. 左ペインのチーム エクスプローラーでプロジェクト名の右にある [▼] をクリックして[保留中の変更]をクリッ クします。
  86. 86. 86 5. [コメント]欄に ゲートチェックインに失敗するようにわざと間違える と入力し、[チェックイン]をクリックし ます。 6. 以下の確認画面が表示されるので、[ビルドの変更]をクリックします。
  87. 87. 87 ボタンをクリックすると、チーム エクスプローラーの上側に検証中である旨のメッセージが表示されます。 チームエクスプローラーから▼をクリックして、ビルドを選択し、ビルド処理を表示します。 ゲートチェックインが実行されているので、ダブルクリックします。
  88. 88. 88 ブラウザーが起動され、ビルド状態の画面が表示されます。 しばらくすると、継続的インテグレーションの時とは異なり、 チェックインが拒否されました というエラーに なり、Visual Studio の通知アイコンから以下のメッセージも表示されます。
  89. 89. 89 7. 左ペインのチーム エクスプローラーでプロジェクト名の右にある [▼] をクリックして[ソース管理エクスプロ ーラー]をクリックします。
  90. 90. 90 8. ソース管理エクスプローラーから[VSOHOL]を右クリックし、[履歴の表示]を選択します。 継続的インテグレーションの時とは異なり、チェックインが行われていません。(チェックイン時に入力したコ メントが表示されず、変更セットの番号も変化していません) メモ: この状態は、先ほど修正したソースコードはサーバ側に一時保管された状態となっています。(TeamFoundation Server/ Visual StudioOnline の「シェルブ」という機能を使用しています。「シェルブ」は棚上げという意味)
  91. 91. 91 再編集する前に、サーバ側に一時保管されたソースコードを削除しておきます。 9. Visual Studio の通知アイコンから表示されたメッセージ画面で[アンシェルブ]をクリックします。 10. チェックイン対象としたファイルの一覧が表示されるので、[アンシェルブ]をクリックします。
  92. 92. 92 メモ: 以下のエラーメッセージが表示される場合は、[OK]ボタンをクリックするとメッセージ画面に戻りますので、 メッセージ画面の[無視]ボタンをクリックしてください。 次に、テストでエラーとなった割り算メソッドを正しく変更します。 11. 左ペインの[ソリューション エクスプローラー]タブをクリック後、 [Calculator.cs]をダブルクリックします。
  93. 93. 93 12. Divide メソッドを以下の内容に変更します。通常業務での変更であればコメントは不要ですが、今回はコメントを追加し ないと前回チェックインした内容と同一となるため、変更が発生していないとみなされ、チェックインができなくなるので、 故意に入れることでチェックインを行えるようにします。 13. テストが正常終了することを確認します。メニューから[テスト]-[実行]-[すべてのテスト]を選択します。 14. テスト結果は[テスト エクスプローラー]に表示されます。全てのテストが正常であれば、[成功テスト]のところ に、作成した4件のテスト結果が緑で表示されます。
  94. 94. 94 15. 左ペインの[チーム エクスプローラー]をクリックし、プロジェクト名の右にある [▼] をクリックして[保留中の 変更]をクリックします。 16. [コメント]欄に 割り算メソッドの修正(ゲートチェックイン通過)と入力し、[チェックイン]をクリックします。
  95. 95. 95 17. 以下の確認画面が表示されるので、[ビルドの変更]をクリックします。 ボタンをクリックすると、チーム エクスプローラーの上側に検証中である旨のメッセージが表示されます。
  96. 96. 96 チームエクスプローラーから▼をクリックして、ビルドを選択し、ビルド処理を表示します。 ゲートチェックインが実行されているので、ダブルクリックします。 ブラウザーが起動され、ビルド状態の画面が表示されます。
  97. 97. 97 ビルドが完了すると、下記のような画面が Visual Studio Online 上で表示されます。 また、Visual Studio の通知アイコンから以下のメッセージも表示されます。 18. チェックインが行われていることを、チェックイン履歴で確認します。左ペインのチーム エクスプローラーで ホームアイコンをクリックして[ソース管理エクスプローラー]をクリックします。
  98. 98. 98 19. ソース管理エクスプローラーから[VSOHOL]を右クリックし、[履歴の表示]を選択します。 今回はチェックインが行われています。(チェックイン時に入力したコメントが表示されています)
  99. 99. 99 20. Visual Studio の通知アイコンからのメッセージ画面については、[調整]ボタンをクリックします。
  100. 100. 100 演習 9 : 付録 新しいビルドシステムで継続的インテグレー ションを実施する 従来のビルドシステムは XAML ビルドとして古いビルドシステムという名前に代わり、新しい Web のみで構築可能な ビルドが既定のビルドシステムに変更されました。XAML ビルドの機能はほぼすべて搭載された以外に、クロスプラッ トフォーム対応、容易なスケールアウト機能が提供されています。 本演習では継続的インテグレーションを新しいビルドシステムで実施してみます。 タスク 1 :継続的インテグレーション用ビルド定義を作成する 1. 左ペインの[チーム エクスプローラー]をクリックし、家のマークのホームアイコンをクリック後、[ビルド]をク リックします。
  101. 101. 101 2. 登録されている[ゲートチェックイン]を右クリックして、[ビルド定義の編集]をクリックします。 3. ビルド定義の全般から[無効]を選択します。
  102. 102. 102 4. [保存]アイコンをクリックして保存します。 保存完了すると、チームエクスプローラーのゲートチェックインのアイコンが以下の状態になっています。これ で無効状態にになっています。 5. 家のマークのホームアイコンをクリック後、[Web ポータル]をクリックします。 Web ブラウザーが起動するので、[BUILD]をクリックします。
  103. 103. 103 6. 左上の緑の[+]をクリックします
  104. 104. 104 7. [Build]のなかにある [Visual Studio]を選択して[OK]をクリックします。 OK を押すと、以下のように定義が作成されています。
  105. 105. 105 タスク 2 :ビルド定義を編集する 1. [Visual Studio Build]を選択して、[Solution]の隣のボタンをクリックします。ファイル選択ダイアログボックス を表示されます。 2. [SampleWinForm.sln]を選択して、[OK]をクリックします。
  106. 106. 106 3. [Platform]に$(BuildPlatform)、[Configration]に$(BuildConfigration)と入力されていることを確認します。 メモ: $(BuildPlatform)と$(BuildConfigration)はビルド時にパラメータを置換するマクロの仕組みです。このマクロを使用するこ とにより、Release や Debug,Any CPU,x86 といった指定ごとにビルドを作る必要がなくなります。 4. ビ ル ド 時 に テ ス ト を 実 行 す る た め に [Visual Studio Test] を 選 択 し ま す 。 [Test Assembly] に [**¥$(BuildConfiguration)¥*test*.dll;-:**¥obj¥**] と 入 力 さ れ て い る こ と を 確 認 し ま す 。 [Platform] と [Configration]にも手順 2 と同じ、$(BuildPlatform)、$(BuildConfigration)が入力されています。 5. [Index Sources & Publish Symbols]を選択して、[Continue on Error]がチェックされていることを確認します。
  107. 107. 107 6. [Publish Build Articles]をクリックします。[Article Name]に[drop]、[Artifact Type]は[Server]が選択されてい ることを確認します。 7. [Copy Root]横のボタンをクリックします。
  108. 108. 108 8. フォルダー選択ダイアログボックスが表示されます。[SampleWinForm]を選択して、OK をクリックします。
  109. 109. 109 9. [Copy Root]に選択したフォルダーが表示されています。 10. [Variables]にある[BuildConfigration]を[release]に書き換えます。
  110. 110. 110 11. [Triggers]タブの[Cotinuous integration]にチェックします。 12. [Save]をクリックして保存します。 ビルド名を指定するダイアログボックスが表示されるので、[Name]に[新ビルドの継続的インテグレーション]、 [Comment]に[新しいビルドシステムを使用した継続的インテグレーション]と指定して、[OK]ボタンを押します。
  111. 111. 111 13. ビルド定義の一覧に[新ビルドの継続的インテグレーション]が追加されました。
  112. 112. 112 タスク 3 :ビルドを実行する 1. [Queue build…]をクリックすると、ビルドの実行ダイアログボックスが表示されます。 2. [OK]をクリックします。 3. すぐにビルドが開始されます。しばらくお待ちください。
  113. 113. 113 4. ビルドが成功すると、以下のように[Build Successeded]と表示されます。 5. ビルド結果の[Build xxxxxxx]をクリックすると概要のページが表示されます。
  114. 114. 114 まとめ このハンズオン ラボでは、Visual Studio Online の基本的な利用方法について学習してきました。 Visual Studio Online を利用することで複数人でのアプリケーション開発を効率的に管理していくことが可能になります。 参考リソース  Visual Studio サイト http://www.visualstudio.com/  Visual Studio Online http://www.visualstudio.com/ja-jp/products/what-is-visual-studio-online-vs  Visual Studio Online はじめに http://www.visualstudio.com/get-started/overview-of-get-started-tasks-vs  アプリケーション ライフサイクル管理 http://www.visualstudio.com/explore/app-lifecycle-management-vs  チーム コラボレーション管理 http://www.visualstudio.com/explore/team-collaboration-vs  テスト ツール http://www.visualstudio.com/explore/testing-tools-vs

×