Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
キーワード駆動っぽいテストができるツールを開発した話
Search
ENDO Yasuyuki
November 04, 2022
Technology
540
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
キーワード駆動っぽいテストができるツールを開発した話
自動化大好きエンジニアLT会 - vol.9 発表資料
ENDO Yasuyuki
November 04, 2022
More Decks by ENDO Yasuyuki
See All by ENDO Yasuyuki
Blueskyに伏せ字投稿ができるWebアプリの作り方
eyasuyuki
0
630
Bluespoilerのご紹介
eyasuyuki
0
510
幻のテスト技法「キーワード駆動テスト」を追い求めて
eyasuyuki
0
2.8k
Kotlin Updates in LL2019
eyasuyuki
0
620
Learn Languages 2019
eyasuyuki
5
1.1k
Why Flutter excitement me?
eyasuyuki
3
1.2k
Kotlin vs Swift
eyasuyuki
0
550
フロントエンドだめ自慢
eyasuyuki
0
140
llot_frontend.pdf
eyasuyuki
0
71
Other Decks in Technology
See All in Technology
Oracle Cloud Network Path Analyzerを試してみた/I Tried Out Oracle Cloud Network Path Analyzer
masakiokuda
1
110
「どのログを見ればいい?」 から始めた サーバーレス障害解析
y_waka1
1
120
C#コードの結合を可視化する Roslyn解析による設計改善と リファクタリング判断
dora56
0
340
開発投資の期待値を上げるプロダクトロードマップづくり ~プロダクトエンジニアが越境して事業を伸ばす~
kekekenta
1
240
AI時代、データエンジニアが一番おもろい
genshun9
0
680
Minecraft JavaのMODをSwiftで作る
1mash0
0
200
AIによるクリエイティブ生成を行う上での試行錯誤
plaidtech
PRO
0
170
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
540
アプリログインとWeb認証基盤をつなぐ ASWebAuthenticationSession 作法
shimastripe
1
390
C#未経験の僕がAIに読めるコードを書かせるまで
maguroalternative
0
230
ADKで始める業務改善 - AIエージェント開発時の考えと設計
harappa80
2
260
SREへの勘違いに気づいた後の話
tomodakengo
0
140
Featured
See All Featured
Visualization
eitanlees
152
17k
Typedesign – Prime Four
hannesfritz
42
3.2k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
260
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
470
WENDY [Excerpt]
tessaabrams
14
39k
Deep Space Network (abreviated)
tonyrice
0
320
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
360
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
65k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
420
Transcript
キーワード駆動っぽいテストができるツールを開発した話 2022-11-02 @eyasuyuki 1
結論 キーワード駆動テストの欠点は で解決できる 2
今回開発したツール Keydriver https://github.com/eyasuyuki/keydriver ノーコードでe2e テストができる オープンソース 商用利用可(MIT ライセンス) 気に入ったら☆(Star) ください
Zenn の記事 https://zenn.dev/eyasuyuki/articles/a20301d34adce0 3
キーワード駆動テストとは システムテストの技法の一つ アクションキーワードとデータからなる表を使ってテストする キーワード表を読み込んでSelenium などを動かすトライバーを作れば自動化できる 4
キーワード駆動テストとは システムテストの技法の一つ アクションキーワードとデータからなる表を使ってテストする キーワード表を読み込んでSelenium などを動かすトライバーを作れば自動化できる ...... などとされているが実践している人を誰も見たことがない幻のテスト技法である 5
キーワード駆動テストの例 No キーワー ド 対象 引数 備考 1 open url[https://www.google.com]
URL をブラウズする 2 input テキストボックス サルゲッチュ テキストボックスへの入力 3 click ボタン[Google 検索] ボタンをクリックする 4 assert タイトル is[ サルゲッチュ - Google 検 索] 検索結果ページのタイトル検 証 6
キーワード駆動テストのメリット 操作を示すキーワードと、その対象となるデータが1 つの表で表現できる 画面が変更されてもドライバーをメンテナンスするだけで済む 発表者が考えるメリット: システムテストの記述を標準化できる テストデータが各所に分散するのを防止できる 7
キーワード駆動テストのデメリット ドライバーを書くのが大変 ドライバーのメンテナンスが大変 これらの欠点により幻のテスト技法となってしまったのではなかろうか。 ではどうするか ? 8
デメリットを で解決する 9
デメリットを頓知で解決する 10
デメリットを頓知で解決する ドライバーを書くのが面倒なら、キーワード表を拡張して画面依存の情報も含めるのはどうか? 11
拡張したキーワード表 No キーワ ード 対象 引数 備考 拡張 1 拡
張 2 1 open url[https://www.google.com] URL をブラウ ズする 2 input テキストボックス サルゲッチュ テキストボッ クスへの入力 name[q] 3 click ボタン[Google 検索] ボタンをクリ ックする name[btnK] 4 assert タイトル is[ サルゲッチ ュ - Google 検 索] 検索結果ペー ジのタイトル 検証 xpath[/html/head/title] 12
動作概念図 Keydriver POI Excel WebDriver ブラウザ E Ex xc ce
el l フ ファ ァイ イル ル読 読み み込 込み み 読 読み み込 込み み ワ ワー ーク クシ シー ート ト ワ ワー ーク クシ シー ート ト ブ ブラ ラウ ウザ ザ操 操作 作 ブ ブラ ラウ ウザ ザ操 操作 作 ブ ブラ ラウ ウズ ズ結 結果 果 ブ ブラ ラウ ウズ ズ結 結果 果 結 結果 果検 検証 証 テ テス スト ト結 結果 果出 出力 力 テ テス スト ト結 結果 果出 出力 力 Keydriver POI Excel WebDriver ブラウザ 13
実際の Excel 表の例 14
デモ https://youtu.be/Klqx18-cBgw 15
参考文献 (1/2) ソフトウエア品質を高める開発者テスト改訂版 ( 高橋寿一 2022) ISBN978-4-7981-7639-0 16
参考文献 (2/2) システムテスト自動化標準ガイド (Mark Fewster, Dorothy Graham 1999) ISBN978-4-7981-3921-0 17