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
Node.js製CLIツールのE2Eテストに取り組んでいます / Working on E2E...
Search
tasshi
December 14, 2023
Programming
0
1.5k
Node.js製CLIツールのE2Eテストに取り組んでいます / Working on E2E testing of Node.js CLI tools
Nihonbashi.js #8 のLT資料です。
イベント情報はこちら↓
https://nihonbashi-js.connpass.com/event/301794/
tasshi
December 14, 2023
Tweet
Share
More Decks by tasshi
See All by tasshi
Web Streams APIの基本と実践、TypeScriptでの活用法 / TSKaigi 2025 Web Streams API
tasshi
6
1.4k
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
290
Streams APIとTCPフロー制御 / Web Streams API and TCP flow control
tasshi
2
570
GitHub Projectsを自動化するGitHub CLIテクニック / Automate GitHub Projects with GitHub CLI
tasshi
0
630
SDK開発チームのプロダクトオーナーが考えていること / Product management of SDK
tasshi
1
1.4k
モダンな開発環境を用いた カンタン/安全なカスタマイズ開発 / kintone devCamp Boost! 2023
tasshi
0
870
Node Streamでメモリ性能改善、そしてWeb Streams APIへ / Improving memory performance of the CLI tool using Node Stream
tasshi
1
3.5k
グローバルチームことはじめ / Bootstrapping a global team
tasshi
1
3.9k
2年目サイボウズ社員とOSS / OSS development of junior engineer in Cybozu
tasshi
0
820
Other Decks in Programming
See All in Programming
AI Agent 時代のソフトウェア開発を支える AWS Cloud Development Kit (CDK)
konokenj
6
800
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
4
1.3k
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
170
チームのテスト力を総合的に鍛えて品質、スピード、レジリエンスを共立させる/Testing approach that improves quality, speed, and resilience
goyoki
5
1.1k
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
250
CDK引数設計道場100本ノック
badmintoncryer
2
480
Deep Dive into ~/.claude/projects
hiragram
14
14k
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
350
Model Pollution
hschwentner
1
160
「App Intent」よくわからんけどすごい!
rinngo0302
1
100
NEWT Backend Evolution
xpromx
1
140
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
300
Featured
See All Featured
Thoughts on Productivity
jonyablonski
69
4.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
Designing for humans not robots
tammielis
253
25k
A better future with KSS
kneath
238
17k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
The Cult of Friendly URLs
andyhume
79
6.5k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
340
It's Worth the Effort
3n
185
28k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Transcript
/PEFKT$-*πʔϧͷ &&ςετʹऔΓΜͰ͍·͢ / J I P O C B T
I J K T α Π Ϙ ζ ג ࣜ ձ ࣾ L J O U P O F % 9 ν ʔ Ϝ U B T T I J
XIPBNJ 🚀 ా խ࣏ !UBTTIJ@NF • αΠϘζגࣜձࣾ • LJOUPOF %9νʔϜ
• 1048& • 4LJMMT • /PEFKT • 5ZQ F 4 DS JQ U ݘ ʹ ͳ Γ ͨ ͍ ɺ ɺ ɺ
LJOUPOF%9νʔϜ 🛠 • LJOUPOFฐࣾఏڙͷΫϥυαʔϏε • %9։ൃऀମݧ %FWFMPQFSF9QFSJFODF • LJOUPOFͷΤίγεςϜ։ൃऀͷ%9্ •
4%,ɾ$ -*πʔϧͷఏڙɾอक 044 • ґଘϥΠϒϥϦͷ$ POUS JC VUJPO • /PEFKT 5ZQF4DSJQU F UDʜ
$ZCP[V*OTJEF0VU I U U Q T
C M P H D Z C P [ V J P F O U S Z
/PEFKT$-*πʔϧͷ &&ςετʹऔΓΜͰ͍·͢
DMJLJOUPOF • LJOUPOFͷϨίʔυΛΠϯϙʔτΤΫεϙʔτ͢Δ$ -*πʔϧ • 5ZQ F 4 DS JQ
UͰ։ൃ • WF SDF MQLHͰ࣮ߦϑΝΠϧʹมͯ͠ • 4&" ͕4UBC MF ʹͳͬͨΒҠߦ͍ͨ͠ɺɺɺ
ݩʑͷ։ൃϑϩʔͰɺɺɺ • νʔϜʹ2"͍ͳ͍ • 48&͕Ϣχοτςετ +FTU Λॻ͍͍ͯͨ • 13ͷ" TTJHOF
F 3F WJF XF S͕அ • ΧόϨοδͦ͜·Ͱѱ͘ͳ͔ͬͨ • 4 UBUF NF OUT • # S BODIFT • 'VODUJPOT • -JOFT
ࠔΓ͝ͱ • 48&ϝϯόʔͷೖΕସΘΓ • 5ZQ F 4 DS JQ U
/PEF KTʹ׳Ε͍ͯͳ͍ϝϯόʔ͕૿͑ͨ • 2" ͕͍ΔνʔϜग़ͷϝϯόʔ͕૿͑ͨ • ϝϯόʔ͕҆৺ͯ͠։ൃͰ͖ͳ͍ঢ়ଶʹ • ࣮ߦϑΝΠϧɺ࣮ߦڥʹؔ͢Δෆ۩߹͕ൃੜ • ωοτϫʔΫ ϓϩΩγɾূ໌ॻ ؔ࿈ • ϑΝΠϧγεςϜؔ࿈ ͳͲ
ςετΛͪΌΜͱΖ͏ʂ
ςετΛͪΌΜͱΔಓͷΓ ςετઓུ ࡦఆ ςετέʔε ࡞ ࣗಈςετ ࣮ ࣗಈςετج൫ ߏங
2"ϝϯόʔΛଐ
ςετઓུ • ͳͥςετ͢Δͷ͔ • ։ൃऀ͕όάɾσάϨͷݒ೦Λ࠷খԽͯ͠։ൃܧଓͰ͖Δ • ΤϯυϢʔβʔ͕࣭ͷอͨΕͨΛར༻Ͱ͖Δ • ͲΜͳςετΛ͢Δͷ͔ •
γεςϜɾιϑτΣΞͷ࣭Ϟσϧ • ΞʔΩςΫνϟ • &&ςετ Ϣχοτςετ͋ΔͷͰ • ࣗಈςετج൫
ςετέʔε࡞ • γεςϜɾιϑτΣΞͷ࣭Ϟσϧ • ରԠ͢ΔDMJ LJOUPOFͷςετ؍Λ࡞ • 2"͕ୟ͖Λ࡞ • ୟ͖Λݩʹ48&2"
Ͱ࠷ऴతͳςετέʔεΛ࡞
ࣗಈςετج൫ߏங • ςεςΟϯάϑϨʔϜϫʔΫ • ࣮ߦڥ • ςετ༻αʔό ࣮ߦڥ ςετ༻αʔό
ςεςΟϯά ϑϨʔϜϫʔΫ BBBBB CCCCC DDDDDD "QQ *% 5FYU /VNCFS DMJ LJOUPOF 4FUVQ"QQ &YFDVUFDMJLJOUPOF 7FSJGZUIFSFTVMU
ςεςΟϯάϑϨʔϜϫʔΫ $-*ςετ+4ΤίγεςϜͰ༗໊ͳͷΛௐࠪ • CBUTDPSF • +FTU • 7JUFTU • $VDVNCFSˡ͜Εʹͨ͠
$VDVNCFS • #%% ৼΔ͍ۦಈ։ൃ ϑϨʔϜϫʔΫ • ςετʹ༷ʹԊͬͨʮৼΔ͍ʯΛهड़͢Δ • (IFSLJOه๏ •
(JWF O 8IFO 5IFO • ΫϩεϓϥοτϑΥʔϜ • +BWB +BWB4DSJQU 3VCZ /&5ͳͲ • /PEFKTͰ$ VDVNC F S KTΛ༻
Ͳ͏ΒݱͬΆ͍ ˣ৽ ˣچ I U U Q T
O Q N U S F O E T D P N ! D V D V N C F S D V D V N C F S W T D V D V N C F S
ςετ༷ͱςετίʔυͷ 'FBUVSFਓؒ 4DFOBSJPΛങ͏ (JWFOਓ͕ؒʹ͍Δ 8IFOਓ͕ؒΛങ͏ 5IFOਓ͕ؒΛ࣋ͭ (JWFO lਓ͕ؒ\TUSJOH^ʹ͍Δz
GVODUJPO \ʜ^ 8IFO lਓ͕ؒ\TUSJOH^Λങ͏z \ʜ^ ʜ ςετ༷ IVNBOGFBUVSF ςετ࣮ TUFQ@EFGJOJUJPOTIVNBOUT
$VDVNCFSΛ࠾༻͢ΔϝϦοτ • ςετ༷ॻ͕ࣗવͱ࡞͞ΕΔ • γφϦΦΛॻ͔ͳ͍ͱࢼݧͰ͖ͳ͍ • εςοϓʹର࣮ͯ͠Λॻ͘ • ࠶ར༻͘͢͠͠Α͏ͱ͢Δྗ͕ಇ͘ •
࣮ͷείʔϓ͕খ͘͞ͳΓ͍͢ • 2"͕ࣗಈςετΛݟ͍͢ • εςοϓఆ͕ٛ͋Ε2" ͕ࣗಈςετΛՃͰ͖Δ
ߏஙͨࣗ͠ಈςετج൫ (JU)VC"DUJPOT LJOUPOFڥ $VDVNCFSKT BBBBB CCCCC
DDDDDD "QQ *% 5FYU /VNCFS DMJ LJOUPOF 4FUVQ"QQ &YFDVUFDMJLJOUPOF 7FSJGZUIFSFTVMU
ࣗಈςετ࣮ • ࣗಈԽ༧ఆͷࢼݧ͕݅ • ޙʹͳΔ΄ͲطଘͷεςοϓఆٛΛ࠶ར༻Ͱ͖ͨ • ࣮͕ٸ্ঢ • ং ൫
ε ϓ Ϧ ϯ τ ʹ ݅ લ ޙ • ऴ ൫ ε ϓ Ϧ ϯ τ ʹ ݅ લ ޙ
Ͳ͏ͳͬͨʁ
࣮·͔ͩΓ·ͤΜ • લεϓϦϯτʹશςετέʔεΛ࣮͠ऴΘͬͨ • ࣮ऴΘ͔ͬͨΓͳͷͰޮՌଌఆ͜Ε͔Β • ͨͩલड़ͷ$VDVNCFSͷϝϦοτ͢Ͱʹײ͍ͯ͡Δ • ςετέʔεͷ্࣮͕ •
2" ͕ςετέʔεΛ࣮
ؾʹͳͬͯΔ͜ͱɾࠓޙͷ՝ • ࣮ߦ࣌ؒͱ͔ • ݱࡏ ఔ • &&ภॏʹͳΒͳ͍ʁ • Ҿ͖ଓ͖Ϣχοτςετॻ͍͍ͯ͘
• ֎ͱத͔Β࣭Λ୲อ͍ͯ͘͠
·ͱΊ • $-*πʔϧͷ&&ςετΛ࣮ͨ͠ • $VDVNCFSͷ࠾༻Ͱ48&⁶2"͕࿈ܞ͘͢͠ͳͬͨ • ޮՌ͜Ε͔Βଌఆ͠·͢