「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>テスト]] * 目次 [#k25b3dde] #contents *概要 [#n0901939] -継続的なビルドとテストの自動実行を行うこと。「常時結合」とも呼ばれる。 -特に日本においては、[[CI サービス>#f57710b2]]より、オンプレ構築可能な[[CIツール>#dace51d6]]のほうが[[導入件数が多い>#ve375d20]]印象。 *CIツール [#dace51d6] デイリービルド&デイリーテストで使用する。 **OSS [#hd3c62aa] ***[[Jenkins]] [#a88eae4c] ***GitLab [#a88eae4c] **プロダクト [#hab60959] ***[[TFS(Team Foundation Server)>SVN vs Git vs TFS#xeb57da7]] [#s8a13fc3] -Team Foundation Server - Wikipedia~ http://ja.wikipedia.org/wiki/Team_Foundation_Server >VSSの後継製品に当たり、~ VSSが持つソースコード管理機能に加え、データの保存、プロジェクト管理~ などのソフトウェア開発プロジェクトを円滑に進めるための機能を備えている。 -チーム・ビルドによる開発の安定化 - @IT~ http://www.atmarkit.co.jp/fdotnet/vstfsintroduce/vstfsintroduce04/vstfsintroduce04_01.html >チーム・ビルドとは、TFSのカスタム・タスク~ を含むMSBuildのスクリプト一式であるといえる。 -自動ビルド、配置、およびテストのワークフローの設定~ http://msdn.microsoft.com/ja-jp/library/hh191495.aspx >ビルド プロセスを使用してアプリケーションの~ ビルド、配置、テストをスケジュールし、実行できる。~ #要件:Ultimate, Premium, Test Professional *CIサービス [#f57710b2] -[[CIツール>#dace51d6]]のサービス版 -[[Travis CI>#mcaf2142]], [[Circle CI>#x20df0b9]], [[AppVeyor>#x0b5b3ea]]などが有名。 **AppVeyor [#x0b5b3ea] Windowsをサポートした貴重な CI 環境 ***参考 [#a3586f3f] -How to use AppVeyor (AppVeyorの使い方)~ https://qiita.com/takahashim/items/1851b6c3e05bb140bb09 **Travis CI [#mcaf2142] かなり有名で言うまでもない。 ***参考 [#z65c6c39] -GitHub と Travis CI で .NET Core の継続的インテグレーションを行う|へっぽこプログラマーの備忘録~ http://kuttsun.blogspot.com/2017/11/github-travisci-net-core.html **Circle CI [#x20df0b9] [[Travis CI>#mcaf2142]]に次いで有名な[[CI サービス>#f57710b2]]。 ***参考 [#wa46a08d] -CircleCI カテゴリーの記事一覧 - しばやん雑記~ https://blog.shibayan.jp/archive/category/CircleCI -【CircleCI】ASP.NET Core 2.0, xUnit を使用したテスト - 小さいことの積み重ね~ http://soglhf.hatenablog.com/entry/2018/04/15/171651 **[[Visual Studio App Center]] [#v3fbc571] スマホ用らしい。 **参考 [#vbd3e148] [[CI サービス>#f57710b2]] の参考 -無料で使える CI サービス 8 個まとめ - 永遠に未完成~ https://thinca.hatenablog.com/entry/20150112/1421054945 -ブログズミ: 無料で使える CI サービス比較~ https://srz-zumix.blogspot.com/2016/01/ci.html -Travis CI vs CircleCI vs Appveyor 2018 Comparison | StackShare~ https://stackshare.io/stackups/appveyor-vs-circleci-vs-travis-ci *考察 [#m6de4984] **起源 [#y5f307f9] ***サービス界隈 [#rd8d6f1b] -スクリプト言語で開発されたサービスを、 -デイリーでエンハンスしていく。 と言った環境の中で発生した。 ***SI界隈 [#xc5d81c0] [[コレ>#rd8d6f1b]]がSI界隈にも輸出されたがミスマッチも多かった。 -デイリーでエンハンス → 開発して納品 -スクリプト言語 → 強い静的型付け言語 **フィッティング [#h1b76723] SI界隈へのフィッティング案 ***スモールスタート [#w521ff5f] 以下からスモールスタート -ビルド・システムのエンハンス --[[案外、複雑>https://opentouryo.osscons.jp/index.php?%E3%83%93%E3%83%AB%E3%83%89%E3%83%BB%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%81%AE%E3%82%A8%E3%83%B3%E3%83%8F%E3%83%B3%E3%82%B9]]、且つ、手付かず。 --テスト・フェーズでの効率低下の原因となっている。 -テストは --疎通(レグレッション)から初めて、 --必要に応じてテストコードを追加する。 ***技術選定 [#haf12123] -[[CIサービス>#f57710b2]]や[[Open PaaS>コンテナ技術#m37e2921]]ではなくオンプレで、 -[[Docker>コンテナ技術#w576cb19]]ではなく[[Windows Serverコンテナ]]で。 --.NET Coreではなく、.NET Framework需要がまだ多い。 --Windows上でJava書いているエンジニアもまだ多い。 --Windows環境は、SI担当が弄り易い。 *参考 [#ve375d20] [[CIツール>#dace51d6]]、[[CIサービス>#f57710b2]] の参考 -継続的インテグレーション - Wikipedia~ http://ja.wikipedia.org/wiki/%E7%B6%99%E7%B6%9A%E7%9A%84%E3%82%A4%E3%83%B3%E3%83%86%E3%82%B0%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3 >主にプログラマーのアプリケーション作成時の品質改善や納期の短縮のための習慣のことである。~ エクストリーム・プログラミング (XP) のプラクティスの一つで、狭義にはビルドやテスト、インスペクションなどを継続的に実行していくことを意味する。 -[k8s]あつまれ! CI/CDツール大集合! - cndjp第5回 参加メモ #cndjp5~ https://budougumi0617.github.io/2018/05/02/cndjp5-cicd-tools/ ---- Tags: [[:テスト]], [[:デバッグ]], [[.NET開発]], [[:ツール類]], [[:CI]]