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
Pub/Subメッセージングのテスト(LT版)
Search
TakashiAsanuma
March 02, 2018
Programming
0
95
Pub/Subメッセージングのテスト(LT版)
TakashiAsanuma
March 02, 2018
Tweet
Share
More Decks by TakashiAsanuma
See All by TakashiAsanuma
Supabase CLIのある開発日常
takashiasanuma
3
290
DCC2P_IDCFクラウドコンテナ商用サービス事例紹介
takashiasanuma
0
67
SUSE RancherとKubernetes環境へのWAF対応
takashiasanuma
0
180
RubyによるPub/Sub messaging - パブリッククラウドのバックエンドシステム事例 /Public Cloud backend system
takashiasanuma
0
130
RubyでPub/Sub messaging-Multi Process-Daemonizes-Application
takashiasanuma
1
12k
Scalable Applications with Pub/Sub Messaging
takashiasanuma
0
110
IDCクラウドのバックエンド
takashiasanuma
0
130
CMやるよって言われてからのインフラチューニング
takashiasanuma
0
210
今更ながらElasticSearch + Kibana導入で ハマってしまったこと
takashiasanuma
0
700
Other Decks in Programming
See All in Programming
開発者への寄付をアプリ内課金として実装する時の気の使いどころ
ski
0
350
詳しくない分野でのVibe Codingで困ったことと学び/vibe-coding-in-unfamiliar-area
shibayu36
3
4.4k
Local Peer-to-Peer APIはどのように使われていくのか?
hal_spidernight
2
450
CSC509 Lecture 02
javiergs
PRO
0
410
Swift Concurrency - 状態監視の罠
objectiveaudio
2
450
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
1k
Conquering Massive Traffic Spikes in Ruby Applications with Pitchfork
riseshia
0
150
ソフトウェア設計の実践的な考え方
masuda220
PRO
3
480
LLMとPlaywright/reg-suitを活用した jQueryリファクタリングの実際
kinocoboy2
4
670
エンジニアとして高みを目指す、 利益を生み出す設計の考え方 / design-for-profit
minodriven
23
12k
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
920
クラシルを支える技術と組織
rakutek
0
190
Featured
See All Featured
It's Worth the Effort
3n
187
28k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Raft: Consensus for Rubyists
vanstee
139
7.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Typedesign – Prime Four
hannesfritz
42
2.8k
Designing Experiences People Love
moore
142
24k
Build your cross-platform service in a week with App Engine
jlugia
232
18k
Transcript
IDC Frontier Inc. All rights reserved. 表参道.rb #32 Pub/Subメッセージングのテスト 株式会社IDCフロンティア
技術開発本部 UX開発部 浅沼 敬 2018年03⽉1⽇
2 IDC Frontier Inc. All rights reserved. ⾃⼰紹介 # LIFULL
- HOMEʼS 開発リーダー - HOMEʼS 流通ユニット⻑ - HOMEʼS インフラ担当 # ZIGExN - アルバイトEX 開発担当 - 全社インフラ担当 - ベトナム⼦会社 PM # IDCフロンティア(現在) - IDCFクラウドのバックエンド開発 Twitter: @rmaccho Speaker Deck: TakashiAsanuma Github: TakashiAsanuma
3 IDC Frontier Inc. All rights reserved. IDCFクラウドのサービス
4 IDC Frontier Inc. All rights reserved. IDCFクラウドのPub/Sub UI API
MQ Ctrl Worker DB Cloud Stack MQを介して、JSONのメッセージ をPub/Subしています
5 IDC Frontier Inc. All rights reserved. テスト戦略 UI システムテスト
各コンポーネント別 振る舞いテスト Unit Test
6 IDC Frontier Inc. All rights reserved. 振る舞いテスト(Ctrl) Before: Message
Publish MQ Ctrl Result Message Message Templates Expect Message Expect Diff
7 IDC Frontier Inc. All rights reserved. テストコード配置 Spec/ behavior/
#ジョブごとの振る舞いテスト shared_examples/ #共有コードの集まり support/ #MQ, JSON関連処理のHelper Message_templates/ templates/ #ジョブごとのメッセージテンプレート message_helper/ builder/ #ジョブごとのメッセージを⽣成
8 IDC Frontier Inc. All rights reserved. 良いところ・つらいところ 良いところ -
振る舞い配下の処理に⼿を⼊れやすい - メッセージを定義してBDD的に進めやすい つらいところ - JSON関連の独⾃Utilが・・・ - メッセージをログから取得したりするパースが・・・ - 関連ミドルウェア等が多いと、そのモック⽤意が・・・
9 IDC Frontier Inc. All rights reserved. 以上です。 ありがとうございました。