Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
キーワード駆動っぽいテストができるツールを開発した話
Search
ENDO Yasuyuki
November 04, 2022
Technology
520
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
590
Bluespoilerのご紹介
eyasuyuki
0
480
幻のテスト技法「キーワード駆動テスト」を追い求めて
eyasuyuki
0
2.7k
Kotlin Updates in LL2019
eyasuyuki
0
610
Learn Languages 2019
eyasuyuki
5
1.1k
Why Flutter excitement me?
eyasuyuki
3
1.2k
Kotlin vs Swift
eyasuyuki
0
530
フロントエンドだめ自慢
eyasuyuki
0
140
llot_frontend.pdf
eyasuyuki
0
70
Other Decks in Technology
See All in Technology
自律型AIエージェントは何を破壊するのか
kojira
0
130
GoとSIMDとWasmの今。
askua
3
520
脆弱性対応、どこで線を引くか
rymiyamoto
0
110
Snowflakeと仲良くなる第一歩
coco_se
4
330
「速く作る」から「正しく作る」へ ─ 生成AI時代の開発フロー改革の ロードマップと実行 ─
starfish719
0
9.3k
AIソロプレナー時代に2ヶ月で20人増員した事業創造会社の開発組織の話
miyatakoji
0
270
OCI Oracle AI Database Services新機能アップデート(2026/03-2026/05)
oracle4engineer
PRO
0
310
Socrates × Looker 〜セマンティックレイヤーで進化するデータ分析エージェント〜
hanon52_
3
1.7k
個人の発見を、組織の知恵に 〜生成AI活用を"探索"から"組織の仕組み"へ〜
kintotechdev
3
1.1k
SIer20年! 培ったスキルがスタートアップで輝く時
shucho0103
0
800
エンジニアリング戦略の作り方 / Crafting Engineering Strategy
iwashi86
16
5.2k
AmazonRoute 53ではじめてのドメイン取得!HTTPS化までの道のりを整理してみた
usanchuu
3
120
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Navigating Team Friction
lara
192
16k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
Six Lessons from altMBA
skipperchong
29
4.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Everyday Curiosity
cassininazir
0
230
Statistics for Hackers
jakevdp
799
230k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
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