O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Karateによる UI Test Automation 革命

2.242 visualizações

Publicada em

KarateによるUIテスト革命

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Karateによる UI Test Automation 革命

  1. 1. 1Copyright © Acroquest Technology Co., Ltd. All rights reserved. Karate による UI Test Automation ⾰命 2019/11/30 Acroquest Technology Co., Ltd. 鈴⽊ 貴典
  2. 2. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 2 ⾃⼰紹介 n 所属 • Acroquest Technology Co., Ltd. n 主な業務分野 • システムアーキテクト • IoTサービス開発 • ビッグデータ処理プラットフォーム • サーバーレス・アーキテクチャ n バックグラウンド • エンタープライズ/ミッションクリティカル • SEPG/開発/マネジメント • Java/Python 鈴⽊ 貴典 シニアテクニカルアーキテクト Acro = 先端を quest = 探究する
  3. 3. Acroquestのミッション・ビジョン Copyright © Acroquest Technology Co., Ltd. All rights reserved. 3 テクノロジストチームとして ビジネスの⾰新的価値創出に挑戦する ビジョン Acroquestの創り出す技術で 地球を感動で進化させる ミッション
  4. 4. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 4 テスト⾃動化における 課題
  5. 5. テスト⾃動化における課題 Copyright © Acroquest Technology Co., Ltd. All rights reserved. 5 • Integration/UIの テストを作成する 難易度が⾼い • そもそも テスト⾃動化エンジニア がいない • メンテナンスコストが ⾼い
  6. 6. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 6 ⾃動化が必要なのは 分かっている。 でも、 できていない、 挫折してしまう。。。 そういった問題を どうにかしたい︕
  7. 7. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 7 Karate Web-Services Testing Made Simple
  8. 8. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 8 Karate Web-Services Testing Made Simple Test Automation Made Simple
  9. 9. 幅広いテストに対応 Copyright © Acroquest Technology Co., Ltd. All rights reserved. 9 テストダブル (モック) APIテスト UIテスト 性能テスト REST-API GraphQL gRPC WebSocket ファイル ブラウザ Windowsアプリ Android/iOS (Appium) バックエンドのモック化 Gatling連携
  10. 10. Karateによるテスト⾃動化 Copyright © Acroquest Technology Co., Ltd. All rights reserved. 10 • 単⼀のツールで 幅広いテストに対応可能 • DSL(Garkin記法)で シナリオテストが可能 (Non-Programming) • 学習コストが低い
  11. 11. GitHub stars of Karate Copyright © Acroquest Technology Co., Ltd. All rights reserved. 11 2019-11-30 2575 Stars
  12. 12. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 12 ① テスト⾃動化 対応スピードの 向上 ② テスト⾃動化 導⼊プロジェクト の拡⼤ ③ ⾃動化範囲が 広くなったこと による安⼼感 Karateによって私たちが得られたこと
  13. 13. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 13 Karate による UIテスト
  14. 14. 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の指定 画⾯オープン 画⾯⼊⼒ 画⾯遷移 結果の確認 画⾯キャプチャ
  15. 15. KarateによるUIテストのメリット Copyright © Acroquest Technology Co., Ltd. All rights reserved. 15 ③テストレポートの 出⼒ ①UIテストの ユニットテスト化 • VS Code プラグインよる 効率的なテスト作成/実⾏ • 単発/連続したシナリオの実⾏ ②バックエンドに対する 操作も考慮した シナリオの構築 • DSLによる直観的なテストケース記述 • JavaやJSの処理を呼び出すことができ、 環境の初期化や非同期処理にも対応可能 • テストレポートの⾃動出⼒ • 画⾯キャプチャの⾃動取得
  16. 16. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 16 実現したかったこと テストの効率化 =
  17. 17. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 17 実現したかったこと テストの効率化 プロダクトの品質向上 =
  18. 18. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 18 実現したかったこと テストの効率化 プロダクトの品質向上 QoLの向上=
  19. 19. Copyright © Acroquest Technology Co., Ltd. All rights reserved. 19 テスト⾃動化が 容易になる テストの アジリティが 向上する エンジニアが 楽になる プロダクトの 質が向上する ユーザーも よろこぶ ⼈々の⼈⽣の質が 向上する
  20. 20. Evolve the Earth with Emotion of Technology Copyright © Acroquest Technology Co., Ltd. All rights reserved. 20 Quality of Testing for Quality of Life
  21. 21. 参考 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

×