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
BDDフレームワークで始める、E2Eテストのススメ
Search
kazuma.murata
August 27, 2020
Programming
1
510
BDDフレームワークで始める、E2Eテストのススメ
2020年8月27日 MCOpenLabでのLTのスライドです
kazuma.murata
August 27, 2020
Tweet
Share
More Decks by kazuma.murata
See All by kazuma.murata
ROSCAFE_2社に聞く_DevOpsの最新事例__SocialDog発表スライド_.pdf
canon1ky
1
160
Laravel × オニオンアーキテクチャで始めるテスト駆動開発
canon1ky
5
2.2k
20200109サポーターズ勉強会
canon1ky
0
280
2019年11月20日 ビアバッシュ LT発表資料
canon1ky
0
420
仲間と起業、経営から廃業に至る中で学んだ「ビジョン」の本当の大切さ
canon1ky
2
71
Other Decks in Programming
See All in Programming
Amazon S3 NYJavaSIG 2024-12-12
sullis
0
100
ドメインイベント増えすぎ問題
h0r15h0
2
300
Haze - Real time background blurring
chrisbanes
1
510
採用事例の少ないSvelteを選んだ理由と それを正解にするためにやっていること
oekazuma
2
1k
テストコード文化を0から作り、変化し続けた組織
kazatohiei
2
1.5k
Refactor your code - refactor yourself
xosofox
1
260
talk-with-local-llm-with-web-streams-api
kbaba1001
0
180
ブラウザ単体でmp4書き出すまで - muddy-web - 2024-12
yue4u
3
470
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
130
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
540
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
330
Go の GC の不得意な部分を克服したい
taiyow
3
780
Featured
See All Featured
Visualization
eitanlees
146
15k
Making Projects Easy
brettharned
116
5.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
66k
Become a Pro
speakerdeck
PRO
26
5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
It's Worth the Effort
3n
183
28k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Making the Leap to Tech Lead
cromwellryan
133
9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
Transcript
BDDϑϨʔϜϫʔΫͰ࢝ΊΔ E2Eςετͷεεϝ ଜాओຏ
ࣗݾհ • ଜాओຏ (ΉΒͬͯ͌) • גࣜձࣾShowcase GigʢγϣʔέʔεɾΪάʣ όοΫΤϯυΤϯδχΞ • ࠷͍ۙͬͯΔٕज़:
Go / PHP / Redis Stream • ڵຯ: ιϑτΣΞઃܭ / ࣗಈςετ / etc… • মͱεΠʔπ͕͖Ͱ͢
E2Eςετͱ
୯ମςετͱE2Eςετ • ୯ମςετ • ؔΫϥεͷ୯Ґ • ։ൃऀࢹͰͷখ͍͞ςετ • E2Eςετ •
ΤϯυϢʔβʔ͕ḷΔγφϦΦͷ୯Ґ • ΤϯυϢʔβʔࢹͰͷςετ
E2Eςετͷύλʔϯ • ϒϩάαʔϏεͷ߹ • (લఏ݅) ϢʔβʔA͕λΠτϧͱຊจΛೖྗ͠ɺ (ૢ࡞) ߘϘλϯΛԡ͢ͱɺ (ظ͢Δ݁Ռ) هࣄҰཡը໘ʹભҠ͠ɺ
ߘͨ͠λΠτϧͷهࣄ͕ଘࡏ͢Δ
E2EςετΛ༻ҙ͢Δํ๏ • ςετγφϦΦͱͳΔؔΛࣗલͰ༻ҙ͢Δ • ʮهࣄొAPIΛୟ͍ͯɺهࣄऔಘAPIΛୟ͍ͯ…ʯͱ͍͏ஞ࣍ॲཧΛࣗલͰ ༻ҙ͢Δ • APIΛୟ͘౷߹ڥΛ͏ • Postman
ͳͲ • BDDπʔϧ / ϑϨʔϜϫʔΫΛ͏
BDDϑϨʔϜϫʔΫͱ
BDDϑϨʔϜϫʔΫͱ • BDD = Behavior Driven Development (ৼΔ͍ۦಈ։ൃ) • ΤϯυϢʔβʔͷৼΔ͍ΛεϖοΫ(ཁٻ)ͱͯࣗ͠વݴޠͰهड़͢Δ
• εϖοΫͱඥ͍ͮͨςετ͕࣮ߦ͞ΕΔ • ςετέʔε͕ཁٻ༷ͱͳΔ
cucumber • BDDϑϨʔϜϫʔΫͷҰͭ • Given (લఏ݅) / When (ߦΘΕΔૢ࡞) /
Then (ظ͢Δ݁Ռ) ͷܗࣜ • cucumberͷܗࣜͰγφϦΦΛॻ͘ → ςετ࣮ߦऀͱͳΔؔʹ۩ମతͳධՁॲཧΛ࣮͢Δ • cucumberͷγφϦΦΛ࣮ߦ͢ΔͨΊͷϥΠϒϥϦ͕ɺ ֤ݴޠͰ༻ҙ͞Ε͍ͯΔ
γφϦΦͱ࣮ߦؔͷྫ ςετ࣮ߦ ݁Ռग़ྗ
σϞ https://github.com/kmurata08/cucumber-e2e-test-example