Submit Search
人生がときめくAPIテスト自動化 with Karate
3 likes
9,943 views
Takanori Suzuki
Acroquest Technology LTxRT 人生がときめくAPIテスト自動化 with Karate Sparking Joy for API Testing Automation
Technology
Related topics:
Software Testing Insights
Read more
1 of 35
1
2
3
4
5
Most read
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Most read
26
27
28
29
Most read
30
31
32
33
34
35
More Related Content
PDF
MQTTとAMQPと.NET
terurou
PDF
Javaのログ出力: 道具と考え方
Taku Miyakawa
PDF
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
PDF
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
PDF
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
PPTX
世界一わかりやすいClean Architecture
Atsushi Nakamura
PDF
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
NTT DATA Technology & Innovation
PDF
PostgreSQLアンチパターン
Soudai Sone
MQTTとAMQPと.NET
terurou
Javaのログ出力: 道具と考え方
Taku Miyakawa
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
世界一わかりやすいClean Architecture
Atsushi Nakamura
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
NTT DATA Technology & Innovation
PostgreSQLアンチパターン
Soudai Sone
What's hot
(20)
PDF
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
PDF
最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5
Takahiro YAMADA
PDF
Webアプリを並行開発する際のマイグレーション戦略
Takayuki Shimizukawa
PPTX
本当は恐ろしい分散システムの話
Kumazaki Hiroki
PDF
こんなに使える!今どきのAPIドキュメンテーションツール
dcubeio
PPTX
MongoDBが遅いときの切り分け方法
Tetsutaro Watanabe
PDF
こわくない Git
Kota Saito
PDF
DockerとPodmanの比較
Akihiro Suda
PDF
OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022
Takayuki Shimizukawa
PDF
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
PDF
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
PDF
Pythonによる黒魔術入門
大樹 小倉
PDF
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
NTT DATA Technology & Innovation
PDF
Dockerからcontainerdへの移行
Kohei Tokunaga
PDF
Unified JVM Logging
Yuji Kubota
PDF
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
Recruit Lifestyle Co., Ltd.
PDF
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
NTT DATA Technology & Innovation
PDF
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
NTT DATA Technology & Innovation
PDF
Dockerfile を書くためのベストプラクティス解説編
Masahito Zembutsu
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
最適なOpenJDKディストリビューションの選び方 #codetokyo19B3 #ccc_l5
Takahiro YAMADA
Webアプリを並行開発する際のマイグレーション戦略
Takayuki Shimizukawa
本当は恐ろしい分散システムの話
Kumazaki Hiroki
こんなに使える!今どきのAPIドキュメンテーションツール
dcubeio
MongoDBが遅いときの切り分け方法
Tetsutaro Watanabe
こわくない Git
Kota Saito
DockerとPodmanの比較
Akihiro Suda
OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022
Takayuki Shimizukawa
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
Pythonによる黒魔術入門
大樹 小倉
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
NTT DATA Technology & Innovation
Dockerからcontainerdへの移行
Kohei Tokunaga
Unified JVM Logging
Yuji Kubota
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
Recruit Lifestyle Co., Ltd.
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
NTT DATA Technology & Innovation
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
NTT DATA Technology & Innovation
Dockerfile を書くためのベストプラクティス解説編
Masahito Zembutsu
Ad
Similar to 人生がときめくAPIテスト自動化 with Karate
(20)
PDF
Karateによる UI Test Automation 革命
Takanori Suzuki
PDF
React Native GUIDE
dcubeio
PDF
インメモリーで超高速処理を実現する場合のカギ
Masaki Yamakawa
PDF
Indy(Invokedynamic) and Bytecode DSL and Brainf*ck
Uehara Junji
PDF
マイクロサービスにおけるテスト自動化 with Karate
Takanori Suzuki
PDF
グラフデータベースNeo4Jでアセットダウンロードの構成管理と最適化
gree_tech
PPTX
オタク×Node.js勉強会
虎の穴 開発室
PDF
Kanazawa.js.Next
dynamis
PDF
Ingest node scripting_deep_dive
Hiroshi Yoshioka
PDF
XML-RPC : Pythonが「電池付属」と呼ばれる理由
Ransui Iso
PDF
関西Php勉強会のlimeの話
Hisateru Tanaka
PDF
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
JPCERT Coordination Center
PDF
2015 0228 OpenStack swift; GMO Internet Services
Naoto Gohko
PDF
ネットワーク自動化、なに使う? ~自動化ツール紹介~(2017/08/18追加開催)
akira6592
PDF
ネットワーク自動化、なに使う? ~自動化ツール紹介~ (2017/07/21開催)
akira6592
PDF
20180109 titech lecture_ishizaki_public
Kazuaki Ishizaki
PDF
Uniform indexing load with cluster reroute api
Hiroshi Yoshioka
PDF
Gradleどうでしょう
Takuma Watabiki
PDF
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
Akihiro Kuwano
PDF
20211209 lt runtime_field
Nomura Yuta
Karateによる UI Test Automation 革命
Takanori Suzuki
React Native GUIDE
dcubeio
インメモリーで超高速処理を実現する場合のカギ
Masaki Yamakawa
Indy(Invokedynamic) and Bytecode DSL and Brainf*ck
Uehara Junji
マイクロサービスにおけるテスト自動化 with Karate
Takanori Suzuki
グラフデータベースNeo4Jでアセットダウンロードの構成管理と最適化
gree_tech
オタク×Node.js勉強会
虎の穴 開発室
Kanazawa.js.Next
dynamis
Ingest node scripting_deep_dive
Hiroshi Yoshioka
XML-RPC : Pythonが「電池付属」と呼ばれる理由
Ransui Iso
関西Php勉強会のlimeの話
Hisateru Tanaka
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
JPCERT Coordination Center
2015 0228 OpenStack swift; GMO Internet Services
Naoto Gohko
ネットワーク自動化、なに使う? ~自動化ツール紹介~(2017/08/18追加開催)
akira6592
ネットワーク自動化、なに使う? ~自動化ツール紹介~ (2017/07/21開催)
akira6592
20180109 titech lecture_ishizaki_public
Kazuaki Ishizaki
Uniform indexing load with cluster reroute api
Hiroshi Yoshioka
Gradleどうでしょう
Takuma Watabiki
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
Akihiro Kuwano
20211209 lt runtime_field
Nomura Yuta
Ad
More from Takanori Suzuki
(8)
PDF
SORACOM S+Cameraを利用して在庫チェックをやってみた
Takanori Suzuki
PDF
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
Takanori Suzuki
PDF
IoT時代におけるストリームデータ処理と急成長の Apache Flink
Takanori Suzuki
PDF
デブサミ2014-Stormで実現するビッグデータのリアルタイム処理プラットフォーム ~ストリームデータ処理から機械学習まで~
Takanori Suzuki
PDF
SQiP2012 - 質問表の活用によるプロジェクトの早期リスク検出
Takanori Suzuki
DOC
5WCSQ(CFP) - Quality Improvement by the Real-Time Detection of the Problems
Takanori Suzuki
DOC
5WCSQ(CFP) - Quality Improvement by the Real-Time Detection of the Problems
Takanori Suzuki
PDF
5WCSQ - Quality Improvement by the Real-Time Detection of the Problems
Takanori Suzuki
SORACOM S+Cameraを利用して在庫チェックをやってみた
Takanori Suzuki
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
Takanori Suzuki
IoT時代におけるストリームデータ処理と急成長の Apache Flink
Takanori Suzuki
デブサミ2014-Stormで実現するビッグデータのリアルタイム処理プラットフォーム ~ストリームデータ処理から機械学習まで~
Takanori Suzuki
SQiP2012 - 質問表の活用によるプロジェクトの早期リスク検出
Takanori Suzuki
5WCSQ(CFP) - Quality Improvement by the Real-Time Detection of the Problems
Takanori Suzuki
5WCSQ(CFP) - Quality Improvement by the Real-Time Detection of the Problems
Takanori Suzuki
5WCSQ - Quality Improvement by the Real-Time Detection of the Problems
Takanori Suzuki
人生がときめくAPIテスト自動化 with Karate
1.
1Copyright © Acroquest
Technology Co., Ltd. All rights reserved. ⼈⽣がときめくAPIテスト⾃動化 with Karate ~ Sparking Joy for API Testing Automation ~ 2019/05/16 Acroquest Technology Co., Ltd. 鈴⽊ 貴典
2.
Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 2 ⾃⼰紹介 n 所属 • Acroquest Technology Co., Ltd. n 主な業務分野 • システムアーキテクト • IoTサービス開発 • ビッグデータ処理プラットフォーム • サーバーレス・アーキテクチャ n バックグラウンド • エンタープライズ/ミッションクリティカル • SEPG/開発/マネジメント • Java/Python 鈴⽊ 貴典 シニアテクニカルアーキテクト Acro = 先端を quest = 探究する
3.
アジェンダ Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 3 ① テスト⾃動化における課題 ② What is Karate︖ ③ Karate によるAPIテストの実施
4.
Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 4 テスト⾃動化における 課題
5.
Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 5 ⾃動化したくてもなかなかできていない もしくは コストがかかり過ぎている 本内容の ターゲット
6.
⾃動化をしたくても、できない主な要因 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 6 No 要因 説明 1 Integration/UIの テストを作成する 難易度が⾼い • API単体ではなく、シナリオを構成することが必要 になる。 • E2E(End-to-End)や、複数サービスの連携を⾃ 動化するのは、環境(DBやファイルリソースな ど)などの連携やモック化も必要で、複雑になる。 • 複数のツールなどを組み合わせたり、⾃作するこ とが必要となる。 2 そもそも、テスト ⾃動化エンジニアがいない • テストシナリオも設計できて、それを⾃動化でき るテストエンジニアは少ない。 3 メンテナンスコストが ⾼い • 連携するコンポーネントの内、どこかが変わった ら、シナリオを変更する必要が出てくる。 • UIの変更に追随するのが⼤変で、⾃動化途中で挫 折してしまう。
7.
世の中は API-First の時代へ Copyright
© Acroquest Technology Co., Ltd. All rights reserved. 7 • マルチデバイス対応への ニーズ増加 • バックエンド側は、 REST-APIで呼び出す アーキテクチャが 当たり前になってきた
8.
世の中は API-First の時代へ Copyright
© Acroquest Technology Co., Ltd. All rights reserved. 8 • マイクロサービス アーキテクチャ採⽤増加 • システム間連携も REST-APIで実現 • API⾃体が サービスの仕様であり 重要性が⾼まってきた
9.
Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 9 ⾃動化が必要なのは 分かっている。 でも、 できていない、 挫折してしまう。。。 そういった問題を どうにかしたい︕
10.
Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 10 What is Karate?
11.
Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 11 Karate Web-Services Testing Made Simple. • WebサービスAPIのテストを⾃動化する オープンソースのテストフレームワーク • BDD(Behavior Driven Development)に 属するもので、シナリオテストが可能 • Cucumberを元にしており、JavaVM上で 実⾏できるようにしたもの (v0.9より、Cucmber依存はなくなっている) • Garkin記法で、テストシナリオを記述
12.
Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 12 Karate テストシナリオ
13.
Karate の強み Copyright ©
Acroquest Technology Co., Ltd. All rights reserved. 13 ③テストに必要な内容に 幅広く対応できる ①シナリオテストが可能 • 連続した処理のテストが可能で、API単発 ではなく、シナリオテストが実施ができる • JavaやJSと連携でき、関数の利⽤が可能で、 環境の初期化や⾮同期処理にも対応できる • シナリオの再利⽤などもでき、応⽤範囲が広い ②学習コストが低い • DSLによる直観的なテストケース記述 • テスト実⾏/エラー確認の容易性 • プログラマでなくても作成できる • 新⼈でもハマらず導⼊できた • テストダブル(モック)、性能テスト、UIテスト などにも対応 • REST-APIだけでく、ファイルアップロード、 GraphQL、gRPC、WebSocket などにも対応
14.
Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 14 HTTP関連の 標準対応 負荷テスト との連携 シンプルな テストケース 記述 テスト ダブル End-to-End テスト プログラミング ⾔語拡張
15.
Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 15 ThoughtWorks Technology Radar GitHub Stars https://star-history.t9t.io/#intuit/karate https://www.thoughtworks.com/radar/languages-and-frameworks/karate 右肩上がりで 増加中 ASSESSレベルに 登場
16.
Karate vs REST-assured Copyright
© Acroquest Technology Co., Ltd. All rights reserved. 16 No ⽐較ポイント Karate REST-assured 1 Plain Text × (要コンパイル) 2 Parallel Execution △ (Partial) 3 Data Driven Testing (built-in) × (要 TestNG etc.) 4 Environment Switching(Profile) (built-in) × 5 Match full payload in one step × 6 Update JSON payload / object × https://www.slideshare.net/intuit_india/karate-for-complex-webservice-api-testing-by-peter-thomas
17.
Karate vs Cucumber Copyright
© Acroquest Technology Co., Ltd. All rights reserved. 17 No ⽐較ポイント Karate Cucumber 1 Step Definitions built-in, no Java code needed × 2 Re-Use Feature files from other Features × 3 Dynamic Data-Driven Testing × 4 Parallel Test Execution and Reporting × 5 Option to run routines only once per Feature × https://www.slideshare.net/intuit_india/karate-for-complex-webservice-api-testing-by-peter-thomas
18.
Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 18 Karate による APIテストの実施
19.
Karateの主な機能 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 19 No 機能 概要 ① シンプルなテストケース記述 • シナリオ記述 • テスト実⾏結果の確認 • 効率の良いデータ指定/記述 • Fuzzy Matching/Assertion ② HTTP関連の標準対応 • HTTPに対応した組み込み パラメータの活⽤ ③ プログラミング⾔語拡張 • JavaScriptの関数の利⽤ • Javaコードの呼び出し ④ テストダブル • サーバー側のモック化 ※SAPでのフロントエンド開発時に、 バックエンドのモックにも利⽤できる。 ⑤ 負荷テスト連携 • Gatlingとの連係 ⑥ UIテスト • KarateDriver(WebDriver)による UI操作⾃動化/キャプチャ
20.
①シンプルなテストケース記述 〜シナリオの基本構成〜 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 20 Feature: sample karate test script Background: * url 'https://jsonplaceholder.typicode.com' Scenario: get all users and then get the first user by id Given path 'users' When method get Then status 200 And assert response.size() === 10 And assert response[0].id == 1 And match response[0] contains { id: 1, name: "Leanne Graham" } https://jsonplaceholder.typicode.com/users に対して GETメソッド でコールして HTTPステータス 200 であることをテスト レスポンスの内容をテスト
21.
①シンプルなテストケース記述 〜テスト実⾏結果レポート〜 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 21 ステップごとに 実⾏結果が分かる 実⾏時のデータの 内容も分かる
22.
①シンプルなテストケース記述 〜データ記述〜 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 22 # MultilineでのJSON指定 * def jsonData = """ [ {name: 'Bob‘, age: 2}, {name: 'Wild', age: 4}, {name: 'Nyan', age: 3} ] """ * match jsonData == [ {name:'Bob', age:2}, {name:'Wild', age:4}, {name:'Nyan', age:3}] # table指定 * table jsonAsTable | name | age | | 'Bob' | 2 | | 'Wild' | 4 | | 'Nyan' | 3 | * match jsonAsTable == [ {name:'Bob', age:2}, {name:'Wild', age:4}, {name:'Nyan', age:3}] Java開発者が うれしいヤツ ⼀⽬で 分かりやすい
23.
①シンプルなテストケース記述 〜Fuzzy Matching〜 Copyright ©
Acroquest Technology Co., Ltd. All rights reserved. 23 # present / notpresent * def test = {id: '001’, name: 'Bob'} * match test == {id: '001’, name: '#present’, age: '#notpresent'} # number * def test = {foo: 1} * match test == {foo: '#number'} # string * def test = {foo: 'test'} * match test == {foo: '#string'} # boolean * def test = {foo: true} * match test == {foo: '#boolean'} パラメータの有無判定 パラメータの型判定
24.
②HTTP関連の標準対応 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 24 対象 コマンド HTTP url Path method status Request param header cookie form multipart Response responseStatus responseHeaders responseCookies responseTime responseTimeStamp responseBytes HTTP(REST)のテストで 必要となる要素には ほとんど標準で対応している テストケース作成の効率が良い︕ * header Authorization = ‘xxxxxxxxxx’ Given path 'headers', token
25.
③プログラミング⾔語拡張 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 25 * def greeter = function(name){ return 'hello ' + name } * assert greeter('Bob') == 'hello Bob' JavaScript が使える︕ 何か複雑な処理や判定が必要になる場合でも 独⾃関数で対応することが可能になる
26.
③プログラミング⾔語拡張 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 26 * def dateStringToLong = """ function(s) { var SimpleDateFormat = Java.type('java.text.SimpleDateFormat'); var sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ"); return sdf.parse(s).time; } """ * assert dateStringToLong("2016-12-24T03:39:21.081+0000") == 1482550761081 Java のクラスも実⾏できる︕ プロダクトコード/テストコードのクラスなども テストで使うことができ、効率が上がる
27.
④テストダブル Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 27 テスト対象 サービス 依存関係 サービス ⾃動化したいけど、よくある⾯倒なパターン テスト対象のAPI これをどうするか︖
28.
④テストダブル Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 28 テスト対象 サービス 解決できます。そう、Karateならね。 テスト対象のAPI こうできるんです︕ (テストダブル)
29.
④テストダブル Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 29 Feature: Test-Double Background: * def uuid = function(){ return java.util.UUID.randomUUID() + '' } Scenario: pathMatches('/v1/cats') * def responseStatus = 201 * def response = { id: '#(uuid())', name: 'Billie' } Scenario: pathMatches('/v1/cats/{uuid}') * def response = { id: '#(uuid())', name: 'Billie' } Scenario: pathMatches('/v1/dogs') * def responseStatus = 201 * def response = { id: '#(uuid())', name: 'Dummy' } Scenario: pathMatches('/v1/dogs/{uuid}') * def response = { id: '#(uuid())', name: 'Dummy' } テストダブルとして動作させる場合のKarateシナリオ
30.
⑤負荷テスト連携 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 30 Karate Gatling Gatlingと連携して 負荷テストの実⾏ができる Karateの シナリオファイルを 再利⽤可能
31.
⑥UIテスト Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 31 https://twitter.com/ptrthomas/status/1046459965668388866 KarateDriver を 利⽤しての ブラウザ実⾏も可能
32.
⑥UIテスト Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 32 Feature: browser automation Background: * configure driver = { type: 'chrome' } # * configure driver = { type: 'chromedriver' } # * configure driver = { type: 'geckodriver' } # * configure driver = { type: 'safaridriver' } # * configure driver = { type: 'mswebdriver' } Scenario: Google search Given driver 'https://google.com’ And driver.input("input[name=q]", 'karate dsl') When driver.submit("input[name=btnI]") Then match driver.location == 'https://github.com/intuit/karate' * def bytes = driver.screenshot() * eval karate.embed(bytes, 'image/png') KarateDriverを利⽤したUIテスト
33.
Karateによるテスト⾃動化の効率化 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 33 ⾊々なツールを組み合わせて 使いこなす 単⼀のツールで 幅広く対応
34.
参考 Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 34 1. Karate for Complex Web-Service API Testing (Peter Thomas) • https://www.slideshare.net/intuit_india/karate-for-complex-webservice-api-testing-by-peter-thomas 2. Karate - Web-Service API Testing Made Simple (Peter Thomas) • https://www.slideshare.net/VodqaBLR/karate-webservice-api-testing-made-simple 3. Karate: RESTful Testing (SreeCharan Shroff) • https://www.youtube.com/watch?v=LJJmSXJJTaY 4. Webinar on Micro-services Testing With Karate | HackerEarth Webinar • https://www.youtube.com/watch?v=YWK4J3lhFw4 5. マイクロサービスにおけるテスト⾃動化 with Karate (Takanori Suzuki) • https://www.slideshare.net/takanorig/microservices-test-automation-with-karate/
35.
Evolve the Earth with Emotion of Technology Copyright © Acroquest
Technology Co., Ltd. All rights reserved. 35 Sparking Joy for API Testing Automation with Karate !