Upgrade to Pro — share decks privately, control downloads, hide ads and more …

スマートなテストの再利用を支えるテスト資産のデータモデリング #QualityForward

Kinji AKEMINE
September 07, 2022

スマートなテストの再利用を支えるテスト資産のデータモデリング #QualityForward

2022年8月31日に実施した技術イベントの資料です
https://veriserve-event.connpass.com/event/253820/

Kinji AKEMINE

September 07, 2022
Tweet

More Decks by Kinji AKEMINE

Other Decks in Technology

Transcript

  1. スマートな「テストの再利用」を支える
    テスト資産の
    データモデリング

    View Slide

  2. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ ベリサーブが提供するテスト管理ツール QualityForward を題材に、
    テストケース管理・テスト実行管理のあるべき姿について、業界の皆さまと議論をしたい
    ◼ 上記を通して得られた解は、QualityForward上に実現したい
    ◼ 「データモデリング」と題していますが、その運用方法論も含めて議論したい
    ➢ そのきっかけとして、QualityForwardのPOとして考えているたたき台や論点を提示し、
    皆さまからフィードバックや意見、感想、追加の論点をいただきたい
    ➢ あくまでテスト資産のデータモデリングの話でして、皆さまの大多数が携わっているプロダクト開発での
    データモデリングの参考には、1ミリもならない確信がありますので、ご注意ください…m(__)m
    本日の目的
    1

    View Slide

  3. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    はじめに
    2
    感想 → #QualityForward
    質問 → ZoomのQA欄

    View Slide

  4. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 2021年4月に株式会社ベリサーブ入社
    ◼ 研究企画開発部 サービス開発課 課長 / プロダクトマネージャー
    ◆ ベリサーブ内製のテスト支援プロダクト群の全体統制と普及展開に従事
    ➢ 前職は大手SIerにて、全社横断技術部門にて技術開発や商用案件適用支援などに従事
    ◼ 2009年~2013年:ソフトウェアテスト技術を中心に
    ◼ 2013年~2020年:アジャイル開発関連技術を中心に
    自己紹介
    朱峰 錦司(あけみね きんじ)
    3

    View Slide

  5. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ ソフトウェアテスト技術関連の社外活動にも継続的に従事
    自己紹介
    2013年~2019年 2016年~2017年 2021年~
    WACATE
    実行委員
    ICST 2017
    運営委員
    JaSST nano
    お世話係
    出典: https://wacate.jp/ 出典: http://aster.or.jp/conference/icst2017/ 出典: https://jasst-nano.connpass.com/
    4

    View Slide

  6. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 約40年にわたりソフトウェア検証で品質向上に貢献
    ◼ 仕様などの要求事項が満たされているかを評価する Verification と、機能や性能が本来意図された用途や
    目的に合っているかを評価する Validation
    当社の社名にはこの 2つのV を提供する(Service)という想いが込められています
    株式会社ベリサーブ
    本社
    東京都千代田区神田三崎町3-1-16
    神保町北東急ビル 9階
    西日本支社
    大阪府大阪市中央区北浜1-8-16
    大阪証券取引所ビル 19階
    中部支社
    愛知県名古屋市東区泉2-27-14
    関電不動産高岳ビル 13階
    沖縄テストセンター
    沖縄県うるま市字州崎14-1
    沖縄IT津梁パーク
    情報通信機器検証拠点施設
    宇都宮テクニカルセンター
    栃木県宇都宮市宿郷2-7-3
    IRビル宿郷 5階
    広島テクニカルセンター
    広島県広島市南区荒神町1-2
    日宝荒神町ビル 2階
    刈谷テクニカルセンター
    愛知県刈谷市桜町1-24
    JS刈谷駅ビル 2階
    西新宿テクニカルセンター
    東京都新宿区西新宿6-24-1
    西新宿三井ビル 14階
    社 名
    株式会社ベリサーブ
    (VeriServe Corporation)
    設 立 2001年7月24日
    代 表 者 代表取締役社長 新堀 義之
    従業員数 1,452名(2022年3月末時点 連結)
    資 本 金 792百万円(2022年3月末時点)
    事業内容
    1. 製品検証サービス
    2. セキュリティ検証サービス
    3. その他サービス
    子 会 社
    株式会社ベリサーブ沖縄テストセンター
    AIQVE ONE株式会社
    拠 点 右記参照
    5

    View Slide

  7. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    株式会社ベリサーブのR&D
    ベリサーブ



    研究企画開発部
    技術戦略課
    サービス開発課
    自動テスト
    推進課



    直接のサービス提供
    案件ベース
    でのご支援
    内製テスト支援ツールの開発・運用
    • QualityForward
    • GIHOZ
    • TESTRUCTURE…etc
    テスト自動化ソリューションの活用推進
    • OSS:Selenium, Appium…etc
    • ベンダー製品:Autify, mabl,
    MagicPod, UFT One…etc
    先進技術の目利き・実証実験
    • Model Based Testing
    • AI4QA, QA4AI
    • 各種業界規格の策定…etc
    6

    View Slide

  8. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 各テストプロセスをサポートする主要4プロダクトを現在展開中です
    プロダクトラインナップ
    7




















    テストのモニタリングとコントロール
    [開発中]InsighTest
    テスト管理をシンプルに。快適、スケーラブルなテスト管理ツール
    テスト開発のエンジニアリング化を支援ツール “今すぐ使える”テスト技法ツール チームによる探索的テストを加速させるツール










    [開発中]テスト分析支援ツール

    View Slide

  9. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 各テストプロセスをサポートする主要4プロダクトを現在展開中です
    プロダクトラインナップ




















    テストのモニタリングとコントロール
    [開発中]InsighTest
    テスト管理をシンプルに。快適、スケーラブルなテスト管理ツール
    テスト開発のエンジニアリング化を支援ツール “今すぐ使える”テスト技法ツール チームによる探索的テストを加速させるツール










    8
    [開発中]テスト分析支援ツール

    View Slide

  10. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ QualityForward
    9

    View Slide

  11. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    QualityForward
    は、リリースサイクルの高速化を支え、
    プロジェクトの大規模複雑化にも対応可能な、テスト管理ツールです
    テスト・品質の可視化のための定常作業を自動化し、
    エンジニアを煩雑な集計・管理作業から解放します
    快適なパフォーマンスを、テストチームに




    さまざまな開発モデルに対応
    素早く細かい分析レポート
    「シームレスな連携とナレッジの集約・蓄積」でチームを1つに
    クラウド型
    テスト管理
    ツール
    10

    View Slide

  12. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    提供するソリューション
    さまざまなレポートで
    多角的に進捗や品質を可視化
    テスト実行時の進捗や
    品質管理の効率化
    ソリューション①
    課題①
    効率的で再利用が容易な
    テストの資産管理
    テストの資産管理の効率化
    ソリューション③
    課題③
    無駄な時間と手間をなくした
    効率的なレビュー活動
    レビュー活動の効率化
    ソリューション②
    課題②
    11

    View Slide

  13. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    提供するソリューション
    さまざまなレポートで
    多角的に進捗や品質を可視化
    テスト実行時の進捗や
    品質管理の効率化
    ソリューション①
    課題①
    効率的で再利用が容易な
    テストの資産管理
    テストの資産管理の効率化
    ソリューション③
    課題③
    無駄な時間と手間をなくした
    効率的なレビュー活動
    レビュー活動の効率化
    ソリューション②
    課題②
    12

    View Slide

  14. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 本日は以下のようなシーンを想定
    ◼ 同じテスト内容を、たとえば複数の端末やチャネルでテストするとき
    ◼ 一度失敗したテストの再実行をするとき
    ◼ プロダクトの仕様変更に応じて、テスト内容を変更するとき
    ◆ さらには、派生開発をするとき
    テストの再利用とは?
    13

    View Slide

  15. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 現在のQualityForwardの基本的なデータモデル
    14

    View Slide

  16. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ テストケースやテスト実行結果まわりに限定すると
    QualityForwardが扱うデータモデルは右記のとおり
    基本的なデータモデル(1/4)
    15

    View Slide

  17. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ テストスイートという基本単位
    ◼ テストケースのかたまり
    ◆ テストケースの属性はフラットに自由に設定可能
    ◆ Excel管理時の1シートのイメージ
    ➢ 簡易的なバージョン管理
    ◼ 順方向のみ
    ◆ ブランチは可能
    ◆ マージ機構はなし
    基本的なデータモデル(2/4)
    16

    View Slide

  18. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    基本的なデータモデル(3/4)
    17
    ➢ テストケースごとに付与可能なテスト観点
    ◼ 別途、要求ツリーという機構でツリー管理
    ➢ テストスイート(バージョン)ごとに付与可能なタグ

    View Slide

  19. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    基本的なデータモデル(4/4)
    18
    ➢ 期間の箱としてのテストフェーズ
    ◼ その期間で実行するテストスイート(バージョン)を紐づける
    ➢ 各テストスイート(バージョン)ごとの
    実行単位としてのテストサイクル
    ➢ 各サイクル中の個々のテストケースごとの実行結果
    ◼ すべてのレポートの源泉
    ➢ サイクル作成時の絞り込み基準
    ◼ 優先度
    ◼ 前回のテスト結果

    View Slide

  20. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ POの悩み
    19

    View Slide

  21. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 前述のデータモデルや、その運用に関する代表的なものは以下のとおり
    尽きない悩み
    20
    # 悩み
    1 テストケースの属性はフラットでいいのか?
    2 テストケースのグルーピングはどうあるべきか?
    3 テストメンテナンスとテスト実行の単位は同一でいいのか?
    4 テスト実行時のメンタルモデルは?

    View Slide

  22. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 現状
    ◼ 前述のとおり、QualityForward現在の個々のテストケース管理は、スプレッドシート式のテスト管理を踏襲
    ➢ 感じている課題
    1. テストケース間で共通の要素であっても、コピペするしかない
    ◆ テスト手順
    ◆ テストデータ
    2. より根本的な問題として、そもそも箱しか提供していないため、その列の意味をふまえた造りになっていない
    ◆ 汎用性=どうとでもつかえる、を優先した造り
    ①テストケースの属性はフラットでいいのか?(1/2)
    21

    View Slide

  23. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 現状の歯止め策
    ◼ 1については、同一列で同じ内容が連続している場合、色を薄くすることで、視認性を上げる対応
    ◆ とはいえ、修正時の手間は変わらず
    ➢ 今後のアプローチ
    ◼ 当面は、別途、Wikiやスプレッドシートで管理のうえ、
    QualityForward上ではそれへのリンクだけ記載しておくワークアラウンドが、
    お客様のコストパフォーマンスがいいのではないか?という仮説のもと、今後もそれを推奨予定
    ◼ テキストで完結するリストを別定義し、そこから値を選択するような列を設定可能な汎用的な仕組みが
    あるだけでも、効率化がすすむというお客様が多そうなら、実現を検討。
    ①テストケースの属性はフラットでいいのか?(2/2)
    22

    View Slide

  24. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 現状
    ◼ 左記のとおり
    ◆ テストスイートという基本的な枠組み
    ◆ テストスイート(バージョン)はタグ管理のみ
    ◆ 個々のテストケースの属性としてのテスト観点(1つのみ)
    ◆ テストスイート(バージョン)の属性としてのタグ(複数OK)
    ➢ 感じている課題
    ◼ テストスイートが増えたときの全体感の把握の難しさ
    ◼ そもそもテストスイートをどういう単位で作るか?
    ◼ テスト観点・タグはどう使うべきか?
    ◆ 特にテスト観点=要求ツリーは現状、
    機能としてほぼ使われていない
    ②テストケースのグルーピングはどうあるべきか?(1/2)
    23

    View Slide

  25. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 現状の歯止め策
    ◼ 現状のデータモデルの在り方そのものの話なので特になし
    ➢ 今後のアプローチ
    1. テストスイートをディレクトリで階層化できる仕組みの導入の検討
    2. テストスイート設計ガイドラインの提示
    ◆ 上記ディレクトリはテストレベル、機能階層で作成
    ◆ 機能テストについては原則として機能分解にもとづき、機能ごとにスイートを作成
    ⚫ もしくは、その中でもさらに導出方法=使うテスト技法ごとに分割
    ◆ 非機能系のテストは、さらに品質特性ごとにスイートを作成
    ◆ 機能をシンプルな木構造で分解するのは難しい局面もあるため、そのときはタグで補強
    ◆ テスト観点については…まだいいアイデアがない状況
    ⚫ 機能階層との統合を検討か?
    ②テストケースのグルーピングはどうあるべきか?(2/2)
    24

    View Slide

  26. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 現状
    ◼ テストスイートがすべての基本単位となっている
    ➢ 感じている課題
    ◼ 特に海外製のツールは、いわゆるチケット型ツールのような、
    1ケース1画面のようなアプローチのものが多い
    ◆ メンテナンス
    ⚫ テストケースを階層化されたフォルダ管理で整理する
    ◆ 実行時
    ⚫ フォルダ構造にとらわれず、任意のテストケースを組み合わせてテスト手順として都度グルーピングする
    ⚫ もちろん、QualityForwardでいうテストスイートからテストサイクルをつくるように、
    フォルダ内のすべてのテストケースを実行単位としてグルーピングすることも、簡易なステップで実現している
    ◼ スプレッドシート型に比べ、より柔軟性の高い構造である
    ◆ QualityForwardのテストスイートの考え方は枠組みとして強すぎないか?
    ③テストメンテナンスとテスト実行の単位は同一でいいのか?(1/2)
    25

    View Slide

  27. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 現状の歯止め策
    ◼ テストケースの優先度をキーとして、サイクル作成時のテストスコープをしぼる手立ては提供されている
    ◆ テストスイートをまたがるグルーピングはあきらめてもらって、それぞれテストサイクルはつくってもらう
    ➢ 今後のアプローチ
    ◼ スプレッドシート型 → チケット型の転換、つまりテストスイートという箱をとっぱらうことは
    ドラスティックすぎる、というかほぼイチからツールを作り直すこととなる…
    ◼ 優先度だけでなく、より柔軟なテストサイクル作成時のスコープ指定ができるを有効策として検討中
    ◆ 任意のテストケース列の値によって
    ◆ もしくは少し文脈を限定し、③の課題と関連するが、紐づいているテスト観点・タグによって…etc
    ③テストメンテナンスとテスト実行の単位は同一でいいのか?(2/2)
    26

    View Slide

  28. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 現状
    ◼ テスト実行はテストサイクルごとに、1つのテストケースに1つの結果を入れる形式が想定されている
    ➢ 感じている課題
    ◼ 近年特に、マルチプラットフォーム、端末、チャネル対応のアプリ・システムが増えており、
    同じテストケースを、同時にWindows / Macでテストする、iPhone、Androidでテストする、
    というシーンでのテスター体験の期待にこたえられていない
    ◆ スプレッドシートだと、同じテストケースに複数の結果列をつける運用が容易に可能
    ④テスト実行時のメンタルモデルは?(1/2)
    27

    View Slide

  29. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ 現状の歯止め策
    ◼ 特になし
    ◆ 「複数タブでテストサイクルを開いてください」とは言うものの…
    ➢ 今後のアプローチ
    ◼ 事実として非常にニーズが多い
    ◼ データモデルはそのまま、同じテストスイートバージョンから作成されたテストサイクル限定で、
    複数のテストサイクルの結果を同時に結果を投入できる専用ビューの開発を検討中
    ◆ Excelのように結果列が複数並ぶイメージ
    ④テスト実行時のメンタルモデルは?(2/2)
    28

    View Slide

  30. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ おわりに
    29

    View Slide

  31. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    【再掲】QualityForward
    は、リリースサイクルの高速化を支え、
    プロジェクトの大規模複雑化にも対応可能な、テスト管理ツールです
    テスト・品質の可視化のための定常作業を自動化し、
    エンジニアを煩雑な集計・管理作業から解放します
    快適なパフォーマンスを、テストチームに




    さまざまな開発モデルに対応
    素早く細かい分析レポート
    「シームレスな連携とナレッジの集約・蓄積」でチームを1つに
    クラウド型
    テスト管理
    ツール
    30

    View Slide

  32. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    ➢ まずは30日間の無料トライアルをご利用ください
    無料トライアル
    公式サイトから
    お申し込みください!
    31

    View Slide

  33. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    次回予告
    32
    ➢ 2022/9/30(金) 19:00~20:00
    ➢ テーマ(予定)
    ◼ テスト管理レポートについて考える(仮)
    ➢ ご案内
    ◼ 9月上旬にconnpassにて公開予定

    View Slide

  34. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。
    最後の最後に
    33
    We are hiring!
    • テスト支援ツールのプロダクトオーナー
    • テスト支援ツールのカスタマーサクセスエンジニア
    • その他オープンポジション

    View Slide

  35. © 2022 VeriServe Corporation 会社名・製品名・サービス名は、各社の登録商標または商標です。

    View Slide