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
89
Pub/Subメッセージングのテスト(LT版)
TakashiAsanuma
March 02, 2018
Tweet
Share
More Decks by TakashiAsanuma
See All by TakashiAsanuma
Supabase CLIのある開発日常
takashiasanuma
3
130
DCC2P_IDCFクラウドコンテナ商用サービス事例紹介
takashiasanuma
0
54
SUSE RancherとKubernetes環境へのWAF対応
takashiasanuma
0
140
RubyによるPub/Sub messaging - パブリッククラウドのバックエンドシステム事例 /Public Cloud backend system
takashiasanuma
0
120
RubyでPub/Sub messaging-Multi Process-Daemonizes-Application
takashiasanuma
1
11k
Scalable Applications with Pub/Sub Messaging
takashiasanuma
0
100
IDCクラウドのバックエンド
takashiasanuma
0
120
CMやるよって言われてからのインフラチューニング
takashiasanuma
0
190
今更ながらElasticSearch + Kibana導入で ハマってしまったこと
takashiasanuma
0
700
Other Decks in Programming
See All in Programming
聞き手から登壇者へ: RubyKaigi2024 LTでの初挑戦が 教えてくれた、可能性の星
mikik0
1
130
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
430
as(型アサーション)を書く前にできること
marokanatani
10
2.6k
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
330
Pinia Colada が実現するスマートな非同期処理
naokihaba
4
220
「今のプロジェクトいろいろ大変なんですよ、app/services とかもあって……」/After Kaigi on Rails 2024 LT Night
junk0612
5
2.1k
【Kaigi on Rails 2024】YOUTRUST スポンサーLT
krpk1900
1
330
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
1
170
タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用
mot_techtalk
4
1.4k
EventSourcingの理想と現実
wenas
6
2.3k
Macとオーディオ再生 2024/11/02
yusukeito
0
370
ActiveSupport::Notifications supporting instrumentation of Rails apps with OpenTelemetry
ymtdzzz
1
230
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
65
11k
What's new in Ruby 2.0
geeforr
343
31k
Designing the Hi-DPI Web
ddemaree
280
34k
KATA
mclloyd
29
14k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Producing Creativity
orderedlist
PRO
341
39k
A Tale of Four Properties
chriscoyier
156
23k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
GitHub's CSS Performance
jonrohan
1030
460k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Building Applications with DynamoDB
mza
90
6.1k
Building Adaptive Systems
keathley
38
2.3k
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. 以上です。 ありがとうございました。