1.4K Views
September 04, 19
スライド概要
新卒の頃、「NUnitとは何か、どう動かすのか、どのように記述するのか」について、完全に理解したと勘違いしながら作りました。
NUnit完全に理解した @akariwtnk
Table of contents 1.What's NUnit(ひとことで)? 2.What's NUnit(もうちょい詳しく)? 3.Let's try(動かしてみよう)! 4.Let's try(書いてみよう)! 5.Difference(C#、VB.NETの相違点) 6.参考にしたサイト @akariwtnk
Table of contents 1.What's NUnit(ひとことで)? 2.What's NUnit(もうちょい詳しく)? 3.Let's try(動かしてみよう)! 4.Let's try(書いてみよう)! 5.Difference(C#、VB.NETの相違点) 6.参考にしたサイト @akariwtnk
1.What's NUnit(ひとことで)? NUnitとは、⼀⾔で⾔うと 「単体テストの⾃動実⾏を⽀援するためのツール。」 NUnitのNは.NETのN。 @akariwtnk
Table of contents 1.What's NUnit(ひとことで)? 2.What's NUnit(もうちょい詳しく)? 3.Let's try(動かしてみよう)! 4.Let's try(書いてみよう)! 5.Difference(C#、VB.NETの相違点) 6.参考にしたサイト @akariwtnk
2.What's NUnit(もうちょい詳しく)? プログラマーが単体テスト⽤のテスト・プログラムを作成し、それを実⾏することを⽀援 してくれる。 ⼤まかな流れは以下の通り。 i. テストされる側のクラス(例:Calculate)とテストする側のクラス(例: CalculateTest)を⽤意。 ii. Calculateに、x+yを計算して返すメソッド(AddValues())を書く。 iii. CalculateTestに、CalculateのAddValues()のxとyにそれぞれ何を代⼊したらどのよ うな結果になるはずかを書く。 iv. テストを実⾏し、結果を確認する。 @akariwtnk
2.What's NUnit(もうちょい詳しく)? つまり、テストプログラムは、プログラマー⾃⾝が記述しなければならない。 「そんな⾯倒なことやりたくない」?「時間がないから無理」?「テストは⾃分の仕事で はない」? 「テスト書いてないとかお前それ@t_wadaの前でも同じ事⾔えんの?」というライ オンのコピペが有名。 @akariwtnk
ライオンのコピペ(少しカットして縮めた) echo <<<T_WADA ,、,,,、,,, _,,;' '" '' ;;,, テスト書いてないとかお前それ@t_wadaの前でも同じ事⾔えんの? (rヽ,;''""''゛゛;,ノr) ,; i ___ 、__iヽ゛;, ,;'''|ヽ・〉〈・ノ |゙ ';, ,;''"| ▼ |゙゛';, ,;'' ヽ _⼈_ / ,;' /シ、 ヽ ⌒⌒ / リ \ | "r,,`"'''゙´ ,,ミ| | リ、 ,リ | | i ゛r、ノ,,r" i _ | | `ー――-----------┴ ⌒´ ) T_WADA; @akariwtnk
…やってみましょう。 @akariwtnk
Table of contents 1.What's NUnit(ひとことで)? 2.What's NUnit(もうちょい詳しく)? 3.Let's try(動かしてみよう)! 4.Let's try(書いてみよう)! 5.Difference(C#、VB.NETの相違点) 6.参考にしたサイト @akariwtnk
3.Let's try(動かしてみよう)! VB.NETで作成したものを置く予定。 実⾏⼿順の参考になるサイト:Qiita「Visual Studio 2015でNUnit3を使ってテストをす る」 https://qiita.com/84zume/items/0591b285a0162bc2ba0e @akariwtnk
3.Let's try(動かしてみよう)! もし以下のエラーが出てしまったら、NuGetからNUnitとNUnit3TestAdapterを⼀旦アン インストールし、もう⼀度インストールし直す。 「使⽤できるテストはありません。テスト探索プログラムと実⾏プログラムが登録されて おり、プラットフォームとフレームワークのバージョン設定が適切であることを確認し て、もう⼀度お試しください。」 @akariwtnk
Table of contents 1.What's NUnit(ひとことで)? 2.What's NUnit(もうちょい詳しく)? 3.Let's try(動かしてみよう)! 4.Let's try(書いてみよう)! 5.Difference(C#、VB.NETの相違点) 6.参考にしたサイト @akariwtnk
4.Let's try(書いてみよう)! NUnitをNuGetで⼊れてテストコード書いて実⾏するまでの⼀連の⼿順は以下の通り。 https://m-tmatma.github.io/NUnit/NUnit.html @akariwtnk
Table of contents 1.What's NUnit(ひとことで)? 2.What's NUnit(もうちょい詳しく)? 3.Let's try(動かしてみよう)! 4.Let's try(書いてみよう)! 5.Difference(C#、VB.NETの相違点) 6.参考にしたサイト @akariwtnk
5.Difference(C#、VB.NETの相違点) TestFixture テストコードを記述したクラスの上には TestFixture を付ける決まりになっており、 VB.NETなら<>で、C#なら[ ]で囲んで記述する必要がある。 Test 各テストメソッドの上には Test を付ける決まりになっており、 VB.NETなら<>で、C#なら[ ]で囲んで記述する必要がある。 @akariwtnk
Table of contents 1.What's NUnit(ひとことで)? 2.What's NUnit(もうちょい詳しく)? 3.Let's try(動かしてみよう)! 4.Let's try(書いてみよう)! 5.Difference(C#、VB.NETの相違点) 6.参考にしたサイト @akariwtnk
6.参考にしたサイト 「Visual Studio 2015でNUnit3を使ってテストをする」 https://qiita.com/84zume/items/0591b285a0162bc2ba0e 「NUnit3 の使い⽅」 https://m-tmatma.github.io/NUnit/NUnit.html 「NUnitの全貌 〜 基本から、最新バージョンの新機能まで」 https://codezine.jp/article/detail/6518 「NUnit⼊⾨ Test Firstのススメ」 https://www.atmarkit.co.jp/fdotnet/tools/nunit/nunit_01.html @akariwtnk