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
Karateによる UI Test Automation 革命 / UITests-Autom...
Search
Takanori Suzuki
November 30, 2019
Technology
0
350
Karateによる UI Test Automation 革命 / UITests-Automation-with-Karate
システムテスト自動化カンファレンス2019
KarateによるUIテスト革命
Takanori Suzuki
November 30, 2019
Tweet
Share
More Decks by Takanori Suzuki
See All by Takanori Suzuki
ChatGPTとKarateで実現するシン・BDD / Realizing New BDD through ChatGPT and Karate
takanorig
2
3.6k
KarateによるBDDベースのAPIテスト / BDD based API-Testing with Karate
takanorig
1
990
AIカメラで社内販売の品切れを検知して残念な結果になるのを回避した話 / Detecting out of stock items with using AI Camera
takanorig
0
2.2k
フル・サーバーレスでサービスを作る話 / Make the full-stack-serverless service
takanorig
1
280
IoTサービスのエッジからクラウドまでServerlessFrameworkで構築する / Deploying-IoT-Service-from-Edge-to-Cloud-with-ServerlessFramework
takanorig
0
320
[SORACOMUG]S+Cameraを利用して在庫チェックをやってみた / InventoryManagement-with-SORACOM-SCAMERA
takanorig
0
73
スマート工場に向けたIoTデータ分析の実際のところ / SmartFactory-IoT-Data-Analytics
takanorig
0
150
人生がときめくAPIテスト自動化 with Karate / SparkingJoy-for-API-Testing-Automation-with-Karate
takanorig
0
710
マイクロサービスにおけるテスト自動化 with Karate / Microservices-Testing-Automation-with-Karate
takanorig
1
2.3k
Other Decks in Technology
See All in Technology
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
130
新アイテムをどう使っていくか?みんなであーだこーだ言ってみよう / 20250911-rpi-jam-tokyo
akkiesoft
0
260
20250913_JAWS_sysad_kobe
takuyay0ne
2
200
250905 大吉祥寺.pm 2025 前夜祭 「プログラミングに出会って20年、『今』が1番楽しい」
msykd
PRO
1
880
AIのグローバルトレンド2025 #scrummikawa / global ai trend
kyonmm
PRO
1
280
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
12
4.8k
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
150
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
380k
DevIO2025_継続的なサービス開発のための技術的意思決定のポイント / how-to-tech-decision-makaing-devio2025
nologyance
1
390
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
380
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
3
410
なぜテストマネージャの視点が 必要なのか? 〜 一歩先へ進むために 〜
moritamasami
0
220
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Bash Introduction
62gerente
615
210k
Embracing the Ebb and Flow
colly
87
4.8k
The Language of Interfaces
destraynor
161
25k
Six Lessons from altMBA
skipperchong
28
4k
How STYLIGHT went responsive
nonsquared
100
5.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Transcript
1 Copyright © Acroquest Technology Co., Ltd. All rights reserved.
Karate による UI Test Automation ⾰命 2019/11/30 Acroquest Technology Co., Ltd. 鈴⽊ 貴典
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 2
⾃⼰紹介 n 所属 • Acroquest Technology Co., Ltd. n 主な業務分野 • システムアーキテクト • IoTサービス開発 • ビッグデータ処理プラットフォーム • サーバーレス・アーキテクチャ n バックグラウンド • エンタープライズ/ミッションクリティカル • SEPG/開発/マネジメント • Java/Python 鈴⽊ 貴典 シニアテクニカルアーキテクト Acro = 先端を quest = 探究する
Acroquestのミッション・ビジョン Copyright © Acroquest Technology Co., Ltd. All rights reserved.
3 テクノロジストチームとして ビジネスの⾰新的価値創出に挑戦する ビジョン Acroquestの創り出す技術で 地球を感動で進化させる ミッション
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 4
テスト⾃動化における 課題
テスト⾃動化における課題 Copyright © Acroquest Technology Co., Ltd. All rights reserved.
5 • Integration/UIの テストを作成する 難易度が⾼い • そもそも テスト⾃動化エンジニア がいない • メンテナンスコストが ⾼い
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 6
⾃動化が必要なのは 分かっている。 でも、 できていない、 挫折してしまう。。。 そういった問題を どうにかしたい︕
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 7
Karate Web-Services Testing Made Simple
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 8
Karate Web-Services Testing Made Simple Test Automation Made Simple
幅広いテストに対応 Copyright © Acroquest Technology Co., Ltd. All rights reserved.
9 テストダブル (モック) APIテスト UIテスト 性能テスト REST-API GraphQL gRPC WebSocket ファイル ブラウザ Windowsアプリ Android/iOS (Appium) バックエンドのモック化 Gatling連携
Karateによるテスト⾃動化 Copyright © Acroquest Technology Co., Ltd. All rights reserved.
10 • 単⼀のツールで 幅広いテストに対応可能 • DSL(Garkin記法)で シナリオテストが可能 (Non-Programming) • 学習コストが低い
GitHub stars of Karate Copyright © Acroquest Technology Co., Ltd.
All rights reserved. 11 2019-11-30 2575 Stars
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 12
① テスト⾃動化 対応スピードの 向上 ② テスト⾃動化 導⼊プロジェクト の拡⼤ ③ ⾃動化範囲が 広くなったこと による安⼼感 Karateによって私たちが得られたこと
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 13
Karate による UIテスト
KarateによるUIテストのシナリオ Copyright © Acroquest Technology Co., Ltd. All rights reserved.
14 Feature: Browser testing automation Background: * configure driver = { type: 'chrome' } Scenario: Search intuit/karate in GitHub * def keyword = 'karate’ Given driver 'https://github.com/search’ And waitUntil(”document.title == 'Code Search · GitHub’”) And input('input[name=q]', keyword) When submit().click('#search_form button.btn‘) Then match driver.title == 'Search · karate · GitHub’ And match text('li.repo-list-item h3:first-child a') == 'intuit/karate' * screenshot() KarateDriverを利⽤したUIテスト WebDriverの指定 画⾯オープン 画⾯⼊⼒ 画⾯遷移 結果の確認 画⾯キャプチャ
KarateによるUIテストのメリット Copyright © Acroquest Technology Co., Ltd. All rights reserved.
15 ③テストレポートの 出⼒ ①UIテストの ユニットテスト化 • VS Code プラグインよる 効率的なテスト作成/実⾏ • 単発/連続したシナリオの実⾏ ②バックエンドに対する 操作も考慮した シナリオの構築 • DSLによる直観的なテストケース記述 • JavaやJSの処理を呼び出すことができ、 環境の初期化や非同期処理にも対応可能 • テストレポートの⾃動出⼒ • 画⾯キャプチャの⾃動取得
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 16
実現したかったこと テストの効率化 =
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 17
実現したかったこと テストの効率化 プロダクトの品質向上 =
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 18
実現したかったこと テストの効率化 プロダクトの品質向上 QoLの向上 =
Copyright © Acroquest Technology Co., Ltd. All rights reserved. 19
テスト⾃動化が 容易になる テストの アジリティが 向上する エンジニアが 楽になる プロダクトの 質が向上する ユーザーも よろこぶ ⼈々の⼈⽣の質が 向上する
Evolve the Earth with Emotion of Technology Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 20 Quality of Testing for Quality of Life
参考 Copyright © Acroquest Technology Co., Ltd. All rights reserved.
21 1. Karate – GitHub • https://github.com/intuit/karate 2. Karate for Complex Web-Service API Testing (Peter Thomas) • https://www.slideshare.net/intuit_india/karate-for-complex-webservice-api-testing-by-peter-thomas 3. APIテスト⾃動化ツール「Karate」のまとめ • https://qiita.com/takanorig/items/46098b066f1216e3ca89 4. マイクロサービスにおけるテスト⾃動化 with Karate (Takanori Suzuki) • https://www.slideshare.net/takanorig/microservices-test-automation-with-karate/ 5. Example for Karate Standalone (Takanori Suzuki) • https://github.com/takanorig/example-karate-standalone