$30 off During Our Annual Pro Sale. View Details »

テスト管理ツール、提供者目線でのアプローチを語る

 テスト管理ツール、提供者目線でのアプローチを語る

JaSST'23 Tokyo セッション A8 「テストウェアのデータモデル」の発表資料です。
https://www.jasst.jp/symposium/jasst23tokyo/details.html#A8

Kinji AKEMINE

March 10, 2023
Tweet

More Decks by Kinji AKEMINE

Other Decks in Technology

Transcript

  1. テスト管理ツール、
    提供者目線でのアプローチを語る
    朱峰 錦司
    JaSST’23 Tokyo A-8

    View Slide

  2. 自己紹介
    ■ 第三者検証会社にて、テスト支援クラウドツール群を開発
    – ツール群全体のプロダクトマネージャー
    – テスト管理ツールのプロダクトオーナーも兼任
    ■ その前は大手SIerの全社横断技術部門にて、技術開発や
    商用案件適用支援などに従事
    – 2009年~2013年:ソフトウェアテスト技術を中心に
    – 2013年~2020年:アジャイル開発関連技術を中心に
    朱峰 錦司 (あけみね きんじ)@kjstylepp
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 2

    View Slide

  3. 自己紹介
    ■ ソフトウェアテスト関連の社外活動にも継続的に従事
    2013年~2019年 2016年~2017年 2021年~
    WACATE
    実行委員
    ICST 2017
    運営委員
    JaSST nano
    お世話係
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 3

    View Slide

  4. テストケース
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 4

    View Slide

  5. テストケース管理の2大流派
    ■ チケット型
    – 基本的に属性=フィールドを縛る
    ■ テストケースはかくあるべき!
    ■ スプレッドシート型
    – 基本的に属性=列名は自由
    ■ あたなの独自スプレッドシートをそのまま使える!
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 5

    View Slide

  6. テストケース管理の2大流派
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 6
    チケット型 スプレッドシート型

    View Slide

  7. テストケースのグルーピングの2大流派
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 7
    ■ お好きに(入れ子可能な)フォルダ構造で
    – チケット型はこちらが多い印象
    ■ 「テストスイート」という一段階の縛りで
    – スプレッドシート型は基本こっちの印象
    – チケット型でもこっちのものもある

    View Slide

  8. テストケースのグルーピングの2大流派
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 8
    チケット型(フォルダ) チケット型(スイート) スプレッドシート型(スイート)

    View Slide

  9. A-1.一覧性 の考察
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 9
    チケット型(フォルダ) チケット型(スイート) スプレッドシート型(スイート)
    WebのUX/UIの工夫の世界
    (UX/UIデザイナーの採用難…!)

    View Slide

  10. A-1.一覧性 の考察
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 10
    チケット型(フォルダ) チケット型(スイート) スプレッドシート型(スイート)
    一覧参照時において、
    個々のテストケースまで見たいかどうか?

    View Slide

  11. A-2.保守性 の考察
    ■ データ駆動というアイデアがあった
    ■ 少し抽象化するとハイレベル⇔ローレベルの1:nの仕組みは
    これまでのツールパターン関係なく実現できそう
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 11

    View Slide

  12. B.テストモデルとのトレーサビリティ の考察
    ■ 前提として、テストモデル自体を扱うのは、
    いわゆる「テスト管理ツール」の外側がよさそう
    ■ 「強いトレサビ」と「弱いトレサビ」
    – 経験上、「強いトレサビ」はかなりの無理ゲー
    ■ テストケースやその上位グループ(フォルダやテストスイート)に、
    参考情報としてテストモデルをリンクする
    「弱いトレサビ」の確保が無難と考える
    – ただし、テストモデルのさらに上位の仕様情報とのトレサビを
    追うのは人間が頑張るしかない
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 12

    View Slide

  13. 余談:テストモデルの記法とツール
    ■ 記法が定義されたモデル
    – 専用ツールで設計・管理するのがよさそう
    ■ 記法が定義されていないモデル
    – スプレッドシートツールぐらいしかない
    ■ 専用ツールに、表計算機能のない、汎用的かつ純粋な表を
    扱うモデルパターンがあると実はみんなハッピー…?
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 13

    View Slide

  14. タグによるテストケースのグルーピング
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 14
    チケット型(フォルダ) チケット型(スイート) スプレッドシート型(スイート)

    View Slide

  15. C-1.管理構造 の考察
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 15

    View Slide

  16. C-1.管理構造 の考察
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 16
    フォルダやスイートが機能分割単位として
    活用されることが実際に多い

    View Slide

  17. C-1.管理構造 の考察
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 17
    テスト目的もタグで扱われることが多い

    View Slide

  18. C-1.管理構造 の考察
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 18
    テストタイプは、機能横断なものは、タグではなく、
    フォルダやスイートでまとめられることも多い

    View Slide

  19. C-2.テストケースの名前 の考察
    ■ これはチケット型のツールを導入した際に
    改めて意識させられる概念
    ■ 大事な意識なので、スプレッドシート型のツールでも
    あえて明示的に列導入するのがいいかもしれない
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 19

    View Slide

  20. テストの実行の概念
    ■ ケースと実行の関係のパターン
    – シンプルに1テストケースごとに1実行と割り切るパターン
    ■ 一部のスプレッドシート型にみられる
    – 実行のたびにスプレッドシートファイルインポートしてね!
    – テストケースは継続的に繰り返し実行されるため、
    ケースと実行を1:nとするパターン
    ■ 大半のツールはこちら
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 20

    View Slide

  21. テストの実行の概念
    ■ テストひとまわしのカタマリのパターン
    – スプレッドシート型はテストスイートをそのまま実行単位に
    – チケット型は好きなテストケースを任意で組み合わせて
    ■ 加えて、どのツールにも、一定期間で区切られる
    「工程」の概念を持つ
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 21

    View Slide

  22. テストの実行の概念
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 22
    チケット型 スプレッドシート型(1:1) スプレッドシート型(1:n)

    View Slide

  23. D.テスト実行結果のステータス の考察
    ■ ツールとしては、数が増えてもいいから、
    実践的に意味のあるステータスは、増やしたほうがいい
    ■ 加えて、結果補足として、前回からのステータスの遷移の情報を
    実行時に理由も併せて、併記できるとなおよい
    – 例) Failed -> Out Of Scope
    – 例) Skip -> Out Of Scope
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 23
    ステータス 意味
    Not Run まだ未実行
    Passed 成功
    Failed 失敗
    Skipped 一時的に飛ばしている
    Blocked 他責で進まない
    Out Of Scope 何かの事情で実施しないことにした

    View Slide

  24. E.情報の活用 の考察
    ■ テスト管理ツールとしての最低限は、
    今この瞬間、実行されているテストの進捗や品質の状況
    ■ 加えて、次のテストに活かせる情報も提供したい
    – 不具合の分布
    ■ 機能ごと
    ■ テスト目的・タイプごと
    …etc
    – Blocker要因
    ■ さらには、プロジェクトのテスト戦略へも情報を提供したい
    – 自動化はうまくいっているか?
    ■ 自動化率と、その推移
    ■ 自動テストのFlakyさと、その推移
    …etc
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 24

    View Slide

  25. Let’s
    discuss!
    2023/3/10 JaSST'23 Tokyo A-8 テストウェアのデータモデリング 25

    View Slide