マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

テスト自動化がなかなか上手く行かないので考察した結果をメモ

詳細

以下のように、分類してベターユースを考察

分類

以下の分類がある。

単体テスト:B層以下のテスト自動化

メソッド・インターフェイスから、
単体テスト用CLのように直交表を用いてデータ・パターンをテスト自動化する。

単体テスト:P層以下のテスト自動化

UIから、
単体テスト用CLのように直交表を用いてデータ・パターンをテスト自動化する。

結合テスト:シナリオ・レベルのテスト自動化

UIオートメーションのツール、もしくは負荷テスト・ツールを使用して行う、
複数画面に渡った、シナリオ・レベルをテスト自動化する。

考察

前述の分類毎に、ベターユースの考察結果をメモしておく。

単体テスト:B層以下のテスト自動化

  • また、CIの項に書いたように、コンテナ技術と組み合わせるとイイと考える。

単体テスト:P層以下のテスト自動化

  • データ投入の自動化等を検討すると良いと考える。
  • 同様に、CIの項に書いたように、コンテナ技術と組み合わせるとイイと考える。

結合テスト:シナリオ・レベルのテスト自動化

  • しかし、以下の目的は、其々、分けたほうが良いかもしれない。
    • 通常の、手動の結合テスト
    • 自動化ツールを使用した自動の結合テスト
      • どちらかと言えば、リグレッション・テスト的。
      • ただし、SIではペイするプランを立案し難い。

TDDやCIとは別物と考える。

TDDやCIは、単体テストや、結合テストとは少々違うと考える。

  • CIについては、
    CIの考察に書いたように、
    • SIのテスト工程に、そのままハマらないので、注意
    • そもそも、≒テスト技法ではなく、品質改善や納期短縮のプラクティスという話もある。

要約

以下の違いを認識する。

其々、テストの目的が異なるので最適な手段も異なる。

  1. SIのテスト工程(単体テスト、結合テスト)
  2. レグレッション・テスト
  3. CIのプラクティス

SIには適合し難い。

  • SIでは、上記の 2., 3. は適合し難い。
  • パッケージと言えども、SIテンプレート系の
    パッケージでは、≒ SIになるので適合し難い。

テスト自動化と親和性が高いケース

SIのUP開発ではなく、

  • 製品開発
  • OSSのAS IS的なライセンス
  • アジャイル的なプロセス

と親和性が高いものと考える。

従って、

  • OSSのAS IS的なライセンス
  • 若しくはWebサービスの開発

などの、

バックログ消化型 & チーム開発で、

デグレード等の早期検出という用途に最も適合しているものと考える。

これはコードの進化のスピードに大きな影響を与えるため、
OSS、Webサービス隆盛の要因の一つにもになっているものと考える。

参考

TDD(テスト駆動開発)

CI(継続的インテグレーション)

テスティング・フレームワーク

テスト自動化について - Open 棟梁 Wiki


Tags: :テスト, :ツール類


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-05-10 (金) 12:54:06 (69d)