「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>テスト]] * 目次 [#g6d669c5] #contents *概要 [#n15d28ac] テスト自動化がなかなか上手く行かないので考察した結果をメモ *詳細 [#qb315a39] 以下のように、[[分類>#v1c0985d]]してベターユースを[[考察>#e9b323bb]]。 **分類 [#v1c0985d] 以下の分類がある。 ***単体テスト:B層以下のテスト自動化 [#ca4fa9f7] メソッド・インターフェイスから、~ 単体テスト用CLのように直交表を用いてデータ・パターンをテスト自動化する。 ***単体テスト:P層以下のテスト自動化 [#e2bf382d] UIから、~ 単体テスト用CLのように直交表を用いてデータ・パターンをテスト自動化する。 ***結合テスト:シナリオ・レベルのテスト自動化 [#oc9dcbf1] [[UIオートメーション]]のツール、もしくは[[負荷テスト・ツール>負荷テストのポイント]]を使用して行う、~ 複数画面に渡った、シナリオ・レベルをテスト自動化する。 **考察 [#e9b323bb] 前述の[[分類>#v1c0985d]]毎に、ベターユースの考察結果をメモしておく。 ***単体テスト:B層以下のテスト自動化 [#a2e572e2] -これは、[[CI]]の[[CIツール>CI#dace51d6]]内で使われている、~ [[NUnit + FxCop + OpenCover + ReportGenerator>Jenkins]]~ などを使用してテスト自動化できる。 -また、[[CI]]の項に書いたように、[[コンテナ技術]]と組み合わせるとイイと考える。 ***単体テスト:P層以下のテスト自動化 [#ce4f705b] -データ投入の自動化等を検討すると良いと考える。 -同様に、[[CI]]の項に書いたように、[[コンテナ技術]]と組み合わせるとイイと考える。 -UIからのテストだが、シナリオではなく、データ・パターンをテストするため、~ [[UIオートメーション]]のツール、もしくは[[負荷テスト・ツール>負荷テストのポイント]]を使用してはダメ。 ***結合テスト:シナリオ・レベルのテスト自動化 [#s1893030] -[[UIオートメーション]]のツール、もしくは[[負荷テスト・ツール>負荷テストのポイント]]を使用して行う。 -しかし、以下の目的は、其々、分けたほうが良いかもしれない。 --通常の、手動の結合テスト --自動化ツールを使用した自動の結合テスト ***TDDや[[CI]]とは別物と考える。 [#kaa6b591] TDDや[[CI]]は、単体テストや、結合テストとは少々違うと考える。 -TDDについては、~ [[TDD(テスト駆動型開発)は幻想>#x3780c2d]]らしいので、コチラも注意。 -[[CI]]については、~ [[CIの考察>CI#m6de4984]]に書いたように、 --SIのテスト工程に、そのままハマらないので、注意 --そもそも、≒テスト技法ではなく、品質改善や納期短縮のプラクティスという話もある。 *参考 [#vf56d515] **テスト駆動開発 [#x3780c2d] -テスト駆動開発 - Wikipedia~ https://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 -TDDという名の幻想...~ https://qiita.com/asip2k25/items/a580417c8aeedd248094 **[[CI]](継続的インテグレーション) [#x27f1ffd] **[[テスト自動化について - Open 棟梁 Wiki>https://opentouryo.osscons.jp/index.php?%E3%83%86%E3%82%B9%E3%83%88%E8%87%AA%E5%8B%95%E5%8C%96%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6]] [#sdf29dd3] ---- Tags: [[:テスト]], [[:ツール類]]