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
使い捨てAPIテストのすすめ
Search
izumix03
February 09, 2024
Business
220
0
Share
使い捨てAPIテストのすすめ
izumix03
February 09, 2024
Other Decks in Business
See All in Business
8 quotes that sum up recent trading in the travel sector
marketingttc
0
170
「事業目線」の正体 〜3つのフェーズのCTO経験から見えてきた、EMが持つべき視点 @ EMConf JP 2026
sotarok
7
4.7k
株式会社DFA Robotics - 会社説明資料
dfarobotics_inc
0
180
2025年度ICT職専門研修(海外派遣研修)報告書 No.2
tokyo_metropolitan_gov_digital_hr
0
350
ログラス会社紹介資料 / Loglass Company Deck
loglass2019
15
520k
enechain company deck_english
enechain
PRO
1
340
第47期 中間期決算説明会資料
tsuchihashi
0
520
株式会社SAFELY 会社紹介 / Company
safely_pr
1
6.2k
LEVELING UP OR LEVELING DOWN? THE IMPACT OF GENERATIVE AI ON STUDENT PERFORMANCE IN BUSINESS SCHOOLS
icopilots
PRO
0
150
Staffing and Procurement for Fast Flow
mploed
1
110
メドピアのValues2025 -もう一度スタートアップへ-
medpeer_recruit
0
840
Crisp Code inc.|わたしたちの事例 / 実績 - Works
so_kotani
0
1.9k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
67k
How to train your dragon (web standard)
notwaldorf
97
6.6k
Fireside Chat
paigeccino
42
3.9k
Between Models and Reality
mayunak
2
250
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Code Reviewing Like a Champion
maltzj
528
40k
Building AI with AI
inesmontani
PRO
1
840
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
GitHub's CSS Performance
jonrohan
1032
470k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
94
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Transcript
使い捨てAPIテストのすすめ ~取得系APIのリプレイスで使えるTips~ DeNA SOMPO Mobility 泉川 貴洋
WEB APIのリプレイって⼤変... 2 実際にやってよかったTips 使い捨てAPIテスト どういう仕様?複雑すぎる... テストもない... 既存APIと同じ挙動を保証?!!
3 泉川 貴洋 / いずみかわ たかひろ 所属 DeNA SOMPO Mobility
グロース本部プロダクト開発部 担当 Anyca サーバサイドエンジニア 出⾝ ⾹川県 家族構成 妻と2歳の娘の3⼈家族 @izumix0303
エニカとは 新型⾞‧⾼級⾞など1,300以上の⾞種に乗れる、 個⼈間を中⼼としたカーシェアサービス。 カーシェアを通じた理想のライフスタイルを提供 4
‧データ準備(登録, DB Dump,etc...) ‧リクエストと正解レスポンスを定義 ‧CIなどで継続的に実⾏ 5 使い捨てAPIテスト? ⼀般的なAPIテスト 使い捨てAPIテスト ‧データ準備(登録,
DB Dump,etc...) ‧リクエストだけ定義 ‧開発終わったら破棄 = 使い捨て
使い捨てAPIテストの構築⼿順 ①古いエンドポイント 旧 新 ②新エンドポイントを 別に作る ③テストを書く GET old/hoge/1 レスポンス取得
新旧のレスポンス⽐較! GET new/hoge/1 ④開発 DB
使い捨てAPIテストの作り⽅ ‧Jupyter Labで作る ‧pythonに変換して実⾏ ‧pytest-clarity で差分を⾒やすくする
Jupyter Labで作る 対話的に確認しながら作れる
Pythonに変換 Makefileの例 Pythonに変換しながら Pytestを実⾏ NOTEBOOKS:=$(shell find src/test -name "*.ipynb") PYS:=$(NOTEBOOKS:.ipynb=.py)
.PHONY: convert convert: $(PYS) %.py: %.ipynb $(VENV)/jupyter nbconvert --to python $< .PHONY: test test: convert $(VENV)/pytest -vv ./src/test/**/*.py include Makefile.venv
pytest-clarity で差分を⾒やすくする JSONの差分を、 ⾊付けして ⾒せてくれる
使い捨てAPIテストのメリット 作りやすさ 簡単に 作れる 質 保証内容が 確実 量 パターンも ⼗分確保
Let's 快適なAPIリプレイス!