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

FindElementできない画面のElementをFindした方法 そこから発展していくテス...

Avatar for satoryo satoryo
December 05, 2020

FindElementできない画面のElementをFindした方法 そこから発展していくテスト自動化

Avatar for satoryo

satoryo

December 05, 2020

Other Decks in Technology

Transcript

  1. Copyright © 2020 WingArc1st Inc. All Rights Reserved. ソフトウェアプロセス&品質改善部 DEQIG

    Automation T 佐藤 亮 FindElementできない画⾯のElementを Findした⽅法 そこから発展していくテスト⾃動化 ソフトウェアテスト⾃動化カンファレンス2020
  2. Copyright © 2020 WingArc1st Inc. All Rights Reserved. ⾃⼰紹介 2

    名前︓佐藤 亮 (さとう りょう)26歳 所属︓ウイングアーク1st株式会社 ソフトウェアプロセス&品質改善部 DEQI G (Data EmpowermentQuality Improvement Group) Automation Team 兼 MBQI G (MotionBoardQuality Impronement Group) 出⾝地︓北海道釧路市 私のミッション︓ ⾃動テスト⽀援、担当製品のテスト、品質改善 今⽇は釧路市からお届けします
  3. Copyright © 2020 WingArc1st Inc. All Rights Reserved. Automation Teamの⽴ち位置

    3 プロダクトA GMG QA プロダクトC GMG QA プロダクトB GMG QA Automation Team
  4. Copyright © 2020 WingArc1st Inc. All Rights Reserved. 今回の主役の製品 •

    データを集約、可視化、そして アクションにつなげるBIダッ シュボード製品 4 集計など様々な処理をする サーバー サーバーからの情報を表⽰する クライアント
  5. Copyright © 2020 WingArc1st Inc. All Rights Reserved. Copyright ©

    2020 WingArc1st Inc. All Rights Reserved. UIテスト⾃動化がゼロだった経緯
  6. Copyright © 2020 WingArc1st Inc. All Rights Reserved. Copyright ©

    2020 WingArc1st Inc. All Rights Reserved. 理想
  7. Copyright © 2020 WingArc1st Inc. All Rights Reserved. Copyright ©

    2020 WingArc1st Inc. All Rights Reserved. 現実
  8. Copyright © 2020 WingArc1st Inc. All Rights Reserved. なんとかならないものなのか・・・ •

    QAでは太⼑打ちできない・・・ • 内部コードを触れる事ができる⼈はいない • 開発チームとMTGをしてみた 17
  9. Copyright © 2020 WingArc1st Inc. All Rights Reserved. サーバー側での処理 19

    このDBの情報を取得して計算をして・・・ グラフは画⾯の右側に表⽰して・・・ ボタンアイテムはグラフの左側に表⽰して・・・ サーバー
  10. Copyright © 2020 WingArc1st Inc. All Rights Reserved. サーバー側での処理 20

    このDBの情報を取得して計算をして・・・ グラフは画⾯の右側に表⽰して・・・ ボタンアイテムはグラフの左側に表⽰して・・・ ここに座標の情報がある︕ この情報を取得し、座標情報をもとにSeleniumでクリック操作ができる︕ サーバー
  11. Copyright © 2020 WingArc1st Inc. All Rights Reserved. Copyright ©

    2020 WingArc1st Inc. All Rights Reserved. UIの⾃動操作が可能になった!!
  12. Copyright © 2020 WingArc1st Inc. All Rights Reserved. さらに(⾃動化施策その2) •

    チャートや明細表の値をJSONで出⼒してもらう機能も実装 • BVTで利⽤できる(バージョンアップ前とバージョンアップ後で差異がない ことがわかる) • システム設定の情報もJSONでわかる(マイグレーションテストで利⽤でき る) 28 ⾃動テストができる範囲が広がった︕
  13. Copyright © 2020 WingArc1st Inc. All Rights Reserved. さらに(⾃動化施策その3) •

    ボードをリロードし、描画完了までの時間を計測する検証 • ⼈間の⽬と反射神経を利⽤し、ストップウォッチで計測する 29 クリック 描画完了 計測開始 計測終了 集中⼒との戦い・・・
  14. Copyright © 2020 WingArc1st Inc. All Rights Reserved. さらに(⾃動化施策その3) •

    ボードにアクセスして描画完了になるまでの時間もサーバー側で保 存できる機能を実装 • 今まではストップウォッチで測る検証をしていたが、Seleniumと Javaを使って⾃動化ができた 30 ⼈間の反射神経に頼る必要がなくなって、精神的にも楽になった︕ ⼯数も5⼈⽇(順調に⾏けば)から1⼈⽇程度に削減できた システム化したことによって、常に同じ条件で測定できる
  15. Copyright © 2020 WingArc1st Inc. All Rights Reserved. 現在 •

    いままで⼿動でやっていたリグレッションテストをテスト⾃動化し ていく作業を⾏っている • ⼈間のリソースをもっと必要なところで利⽤できる 31
  16. Copyright © 2020 WingArc1st Inc. All Rights Reserved. 外部発信したことで •

    グループのテックブログにMB⾃動化をやったよという記事を書いた • https://medium.com/wingarc/650d2ad85e3a • 別プロダクトの開発者がその記事を⾒てくれた • そのプロダクトでも同じような⾃動化を実装できた • 実績があったため受け⼊れてくれた • すばやい⾃動化の実装ができた(ノウハウがあったから) 32 AutomationTeamのミッションである プロダクト横断での⾃動化ができている︕ 「wingarc1st medium」で検索︕︕
  17. Copyright © 2020 WingArc1st Inc. All Rights Reserved. まとめ •

    UIテスト⾃動化をゼロからイチにすることができた • 開発チームとの連携で進めることができた • イチにしたことにより、いろんなところで⾃動化を広げることがで きた • BVTやマイグレーションテスト、性能検証 • 他のプロダクトにも同じような仕組みの⾃動化を組み込めた • 実績があったため • ノウハウがあったので素早い⾃動化を実現 33