「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-戻る
--[[CI]]
--[[テスト自動化]]

* 目次 [#q80d3d7f]
#contents

*概要 [#v89ca099]
テスティング・フレームワークは
-UIテスト自動化
-レグレッション・テスト(リグレッション・テスト)
-[[TDD(テスト駆動開発)>http://ja.wikipedia.org/wiki/%E3%83%86%E3%82%B9%E3%83%88%E9%A7%86%E5%8B%95%E9%96%8B%E7%99%BA]]

などで使用される。

各ツールの説明と適合するシナリオについて分析する。

*xUnit系ツール [#n093985e]
.NET開発のJUnitに対応するテスティング・フレームワークには、~
[[NUnit]]やVisual Studio の単体テスト機能がある。~
ただし、DJunit、DBunit相当のフレームワークは存在しない。

なお、これらの機能は、
>Visual Studio 2005では、Team Developer、Team Tester以上

のEditionでしか利用できなかったが、

-Visual Studio 2010では、Professional以上
-Visual Studio 2012では、Premium以上

で利用可能になっている。

**画面系 [#c0a25b26]
以下のUIテスト自動化が可能なxUnit系ツールも存在するが、~
画面からテストする分、使い方が複雑になり、使い難くなっていると思われる。

-NUnitAsp - ASP.NET unit testing~
http://nunitasp.sourceforge.net/

-NUnitForms  An NUnit extension for testing Windows Forms applications.~
http://nunitforms.sourceforge.net/

-なお、ASP.NET MVCでは、~
コントローラのアクションを実行するための~
テストコードを書けば良いため単体テストが容易になった。~
なお、使用するツールとしては、以下のデファクトのツールを使用できる。
--[[NUnit]]
--Visual Studio単体テスト機能

**機能の変遷 [#v3bb2e76]

***VS2008 [#n6fcb3a8]
-特集:Visual Studio 2008単体テスト機能徹底活用(前編)~
Visual Studio 2008単体テスト機能のすべて - @IT~
http://www.atmarkit.co.jp/ait/articles/0811/14/news137.html

--Visual Studio 2008では、Professional Editionでも使用できる。

***VS2010 [#ka63dbca]
-Visual Studioで作る単体テスト、~
基本のき(VS2010向け改訂版):CodeZine~
http://codezine.jp/article/detail/5826

--Visual Studio 2010では、Professional Editionでも使用できる。

***VS2012 [#md0a84c3]
-第 1 回 Visual Studio 2012 による~
単体テスト  Visual Studio 2012 自習書シリーズ~
http://msdn.microsoft.com/ja-jp/vstudio/dn223359.aspx

-Visual Studio 2012で「単体テストの作成」機能が無くなったけど良い感じ~
http://d.hatena.ne.jp/aoki1210/20120915/p1

-単体テストの作り方がVisualStudio 2012から変わった~
http://pgnote.net/?p=1680

--機能が変わって、Visual Studio 2012では、~
Premium Edition以上で使用できる。

--「単体テストの作成」機能が無くなったのは、~
テストファーストで無い為と言われている。

*その他のツール [#b2c4bbff]

**[[自動UIテスト>UIオートメーション#p2950b60]] [#heba49ce]

**カバレージ率 [#m38678b0]

***OpenCover [#d54cdee1]
カバレージ率を収集するツール。

***ReportGenerator [#e90ff3d9]
上記(テスト結果、カバレージ率)のレポート生成ツール。

***DevPartner Studio [#xb553332]
カバレッジ分析の機能を持つ。

**静的コード解析 [#de29fbb3]

***[[Visual Studio]] [#b00ca80b]
-[[Visual Studio]]のコード分析機能は[[FxCop>#l82248c1]]と同じ機能を提供。
-2010まではUltimate Edition、2012以降はProfessional Editionで利用可。

-参考
--.NET Framework、Native (C と C++)、SQL
---Visual Studioのコード分析機能を利用して~
コードの品質を上げよう (1/3):CodeZine(コードジン)~
https://codezine.jp/article/detail/8403
---Visual Studio 付属のコード分析ツール~
コード分析を使用したマネージ コードの品質の分析~
https://msdn.microsoft.com/ja-jp/library/dd264939.aspx

--JavaScript
---[オプション]、[テキスト エディター]、[JavaScript]、[IntelliSense]~
https://msdn.microsoft.com/ja-jp/library/hh362485.aspx
>例えば、JavaScriptの比較に対して~
"==" ---> "===" などのワーニングを出したりする。

---ESLint support Visual studio 2017~
https://stackoverflow.com/questions/44249111/eslint-support-visual-studio-2017

***[[StyelCop]] [#i413cb8b]
C#のコーディング内容をチェックする。

***[[FxCop]] [#l82248c1]
Microsoftの

>「クラス ライブラリ開発のデザインガイドライン」

に基づいてビルド出力のアセンブリを分析する。

***DevPartner Studio [#g1849122]
静的ソースコード解析の機能を持つ。

***dotTEST [#i3f3ec56]
静的コード解析の機能を持つ(Jtestの.NET版)。

----
Tags: [[:テスト]], [[:デバッグ]], [[.NET開発]], [[:ツール類]], [[:CI]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS