ユーザ用ツール

サイト用ツール


it技術:テスト:組み合わせテストツール

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
it技術:テスト:組み合わせテストツール [2021/04/07 14:45] – [組み合わせテストの大まかな説明] yajuadminit技術:テスト:組み合わせテストツール [2024/05/02 01:55] (現在) – [ペアワイズ法 ] yajuadmin
行 2: 行 2:
 ===== 組み合わせテスト ===== ===== 組み合わせテスト =====
 [[https://www.slideshare.net/ssusere4f193/ss-149101842|組み合わせテストの落とし穴〜有則と無則〜 - SlideShare]] [[https://www.slideshare.net/ssusere4f193/ss-149101842|組み合わせテストの落とし穴〜有則と無則〜 - SlideShare]]
 +==== データベースカバレッジ ====
 +カバレッジとは網羅率のこと
 +
 +<code>
 +WHERE句のAND, ORの条件数をnとすると、用意すべきデータの総件数mは、
 +m = 2 ^n
 +</code>
 +
 +  * [[https://nowokay.hatenablog.com/entries/2005/08/23#1124744144|データベースカバレッジを考えたデータ作成]]
 +  * [[https://asakusabashi.hatenadiary.org/entry/20050825/p1|SQLのカバレッジ]]
 +  * [[http://www.softwaretestingmagazine.com/tools/open-source-test-data-generators/|オープンソースのテストデータジェネレーター]]
 +  * [[https://github.com/NDbUnit/NDbUnit|NDbUnit]]
 +
 +==== テストデータの注意点 ====
 +[[https://qiita.com/disc99/items/177bdf6352de463fdc87|経験ゼロでもできるプログラミング現場の単体テスト]]
 +
 +=== SELECTのテスト ===
 +  * 1件だけ取得
 +    * 全てのテストデータを別にする:selectされたデータを明確にするため
 +    * 条件を満たさない場合取得できないことを確認する
 +  * 複数件取得(検索条件に主キーを指定しない場合も含む)
 +    * データは3件以上(検索条件に合致2件以上、合致しない1件以上):複数件取得、データマッピングが正しいか確認するため
 +    * 「<」「>=」を使用している場合、同値ケースのテストをする
 +    * AND、ORをつなげてる場合、その組み合わせも網羅的にテストする
 +=== INSERTのテスト ===
 +  * null以外のデータを登録
 +  * nullを許可するカラムにnullを登録
 +  * カラム全てに最大桁のデータを登録
 +  * 一意制約に違反するデータを登録
 +=== UPDATEのテスト ===
 +  * null以外のデータを登録
 +  * nullを許可するカラムにnullを登録
 +  * カラム全てに最大桁のデータを登録
 +  * 更新対象のレコードがないときの更新
 +  * 複数券のレコード更新
 +=== DELETEのテスト ===
 +  * 存在しないレコードの削除
 +
 ===== Excel ===== ===== Excel =====
 全ての組み合わせは、SQLでいうCROSS JOIN である。 全ての組み合わせは、SQLでいうCROSS JOIN である。
行 7: 行 45:
   * [[https://qiita.com/akiraa/items/fdad7c0ab46026007766|全ての組み合わせを生成するマクロ]]   * [[https://qiita.com/akiraa/items/fdad7c0ab46026007766|全ての組み合わせを生成するマクロ]]
   * [[https://www.shegolab.jp/entry/excel-tips-data-combination|複数リストから全ての組み合わせデータを作りたい]]   * [[https://www.shegolab.jp/entry/excel-tips-data-combination|複数リストから全ての組み合わせデータを作りたい]]
 +
 +===== ペアワイズ法 =====
 +https://testcase-tool.vercel.app/
 +
 +  * [[http://qiita.com/y_hokkey/items/0a433ba25a5c5587d4ad|テスト工数を削減できるかもしれないペアワイズ法とPairwiser]]
 +  * [[https://zenn.dev/cacarrot/articles/34025c2708e22f|ペアワイズ法によるテストケース生成ツールを自作した]]
 +  * [[https://note.crohaco.net/2019/allpairs-covering-arrays/|意外と簡単!ペアワイズツールを作ったので大まかな仕組みを解説するよ]]
  
 ===== CEGTest(セグテスト) ===== ===== CEGTest(セグテスト) =====
行 50: 行 95:
   * [[http://gihyo.jp/dev/feature/01/sp-test/0002|第2回 PICTの基本的な使い方]]   * [[http://gihyo.jp/dev/feature/01/sp-test/0002|第2回 PICTの基本的な使い方]]
   * [[https://aimek-developer.blogspot.com/2017/10/pictmaster.html|組合せテストケースを自動生成してみよう!(PictMasterの紹介)]]   * [[https://aimek-developer.blogspot.com/2017/10/pictmaster.html|組合せテストケースを自動生成してみよう!(PictMasterの紹介)]]
-  * [[https://qiita.com/greymd/items/ad18aa44d4159067a627|テストの数減らそう!プリキュア学ぶPICT]]+  * [[http://www.jasst.jp/symposium/jasst19tohoku/pdf/S5-3.pdf|組合せテスト打撃と魔法組合せて魔王を倒すぞ- pdf]] 
 +  * [[http://www.jasst.jp/archives/jasst09e/pdf/D4-2.pdf|オーンソースの組み合わせテストツールの開発-組み合わせにおける制約の表形式のモデル化- pdf]]
   * [[http://mokky14.hatenablog.com/entry/2014/12/10/125829|ソフトウェアテスト勉強会 ~PistMasterを使い倒す!~に行ってきました]]   * [[http://mokky14.hatenablog.com/entry/2014/12/10/125829|ソフトウェアテスト勉強会 ~PistMasterを使い倒す!~に行ってきました]]
-  * [[https://monoist.atmarkit.co.jp/mn/articles/1703/24/news010.html|タダでソフト開発の生産性と品質を上げる方法(3):意外に使えるフリーツール「PictMaster」を使いこなす]] 
  
 組み合わせテスト技法にはAll-Pair法と直交表を利用する方法の2種類があります。\\ 組み合わせテスト技法にはAll-Pair法と直交表を利用する方法の2種類があります。\\
行 69: 行 114:
   * [[http://qiita.com/y_hokkey/items/0a433ba25a5c5587d4ad|テスト工数を削減できるかもしれないペアワイズ法とPairwiser]]   * [[http://qiita.com/y_hokkey/items/0a433ba25a5c5587d4ad|テスト工数を削減できるかもしれないペアワイズ法とPairwiser]]
   * [[http://softest.jp/?cat=5|直交表割り付けツール FLMatrix]]   * [[http://softest.jp/?cat=5|直交表割り付けツール FLMatrix]]
-  * [[http://iq148.com/tools/orthogonal_table/|直交表を勉強するついでに作ったサイト]] +
-  * [[http://qiita.com/cheuora/items/7607ae91682d4e811ec0|FreeMind を用いるシナリオ製作。]]+
it技術/テスト/組み合わせテストツール.1617774354.txt.gz · 最終更新: 2021/04/07 14:45 by yajuadmin