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
RSpec基礎
Search
ShoheiMitani
September 29, 2020
0
290
RSpec基礎
nikotama.rb #12のLT資料
ShoheiMitani
September 29, 2020
Tweet
Share
More Decks by ShoheiMitani
See All by ShoheiMitani
rails statsで大解剖 🔍 “B/43流” のRailsの育て方を歴史とともに振り返ります
shoheimitani
2
950
法律に準拠した本人確認システムを0から作った話 〜家計簿プリカB/43でのeKYC開発実例〜
shoheimitani
2
930
初めましてが多いチームの形成期にEMが取り組んだ事
shoheimitani
1
170
ユーザーフレンドリーな取引明細のアーキテクチャ 〜VISAカードの複雑性に向き合う実践例〜
shoheimitani
5
2.6k
孤独のCTOグルメという やや奇抜な企画をやった目的と効果
shoheimitani
3
1.4k
VISAカードの裏側と “手が掛かる” 決済システムの育て方
shoheimitani
41
21k
32個のPRでリリースした依存度の高いコアなモデルの安全な弄り方
shoheimitani
8
7.2k
本番環境のRailsでYJITをONにしてみた結果
shoheimitani
0
160
7つの入金外部サービスと連携して分かった実践的な”状態管理”設計パターン3選
shoheimitani
6
5.8k
Featured
See All Featured
KATA
mclloyd
29
14k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
Reflections from 52 weeks, 52 projects
jeffersonlam
347
20k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Rails Girls Zürich Keynote
gr2m
94
13k
Scaling GitHub
holman
459
140k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Transcript
݄!OJLPUBNBSC 34QFDجૅ OJLPUBNBSC34QFDγϦʔζୈஈ
ࣗݾհ w 3VCZ3BJMTྺ͘Β͍ w 4*FS'BCMJDָఱ'JOUFDIϕϯνϟʔ w ࠷ۙཧը໘ͰϑϩϯτΤϯυ৮ͬͯΔ ʢ3FBDU 5ZQF4DSJQUʣ
ࡾ୩ণฏ !TIPIFJ
ࠓͷൃද༰ w લճͷʮ࣮ફ34QFD ʯͰΓ্͕ͬͨ༰ͷਂ۷Γ w NPDL͏͖ʁTIBSFE@FYBNQMFT@GPS͏͖ʁTQFDͷதͰ MPPQͬͯྑ͍ʁ w IUUQTTQFBLFSEFDLDPNLJTTIZTIJKJBOSTQFDBUOJLPUBNB
EPUSCOVNCFS TMJEF w ࣗͷߟ͑ w ඞཁҎ্ʹෳࡶԽͤ͞ͳ͍ൣғͰέʔεόΠέʔεͰ͍͚Εྑ͍ IUUQTTQFBLFSEFDLDPNLJTTIZTIJKJBOSTQFDBUOJLPUBNBEPUSCOVNCFS
ࠓͷൃද༰ w ඞཁҎ্ʹෳࡶԽͤ͞ͳ͍ൣғ w ඞཁेͷఆ͕ٛΘ͔Βͳ͍ w ෳࡶԽͷई͕ਓʹΑͬͯ·ͪ·ͪ w έʔεόΠέʔε w
ͬͯྑ͍ѱ͍ͷஅج४͋Δͷ͔ʁ w ࠓͷϝΠϯςʔϚ w 34QFDͷجૅతͳ෦Λ͑ͭͭ w ͕ࣗաڈʹݟ͖ͯͨ34QFDͷ۩ମྫΛհ w ͦΕͧΕͷ1SPT$POTΛσΟεΧογϣϯ͍ͨ͠
34QFDͷલʹςετʹ͍ͭͯͷ
.645 ςετΛॻ͘ϨϏϡʔ͢Δ࣌ʹؾΛ͚Δ͜ͱ w ͕ࣗॻ͍ͨίʔυʹෆ͕҆ͳ͘ͳΔ·ͰςετΛॻ͘ w ݅ذϧʔϓ֎෦Ϋϥεॲཧʜ w ΧόϨοδͳͲͷࢦඪෆ҆ΛऔΓআ͘πʔϧ͕ͩա৴ې w ࠷ݶͷςετίʔυͷϦϑΝΫλϦϯά·Ͱணख
w ॏෳͨ͠ςετͷআෆཁʹͳͬͨςετͷআ w ςετίʔυকདྷͷυΩϡϝϯτʹͳΔͷͰϊΠζΛ࠷ݶͳ͘͢ w ෆ҆ఆͳςετίʔυͷमਖ਼ w UJNFDPQܥ w PSEFSະࢦఆ
#&55&3 ςετΛॻ͘ϨϏϡʔ͢Δ࣌ʹؾΛ͚Δ͜ͱ w ΑΓॲཧ݁Ռʹूதͨ͠ςετΛॻ͘ w NPDLΛۃྗഉআ͢Δ w ՄಡੑΛҙࣝͨ͠ςετίʔυΛॻ͘ w EFTDSJCFDPOUFYUJUTIBSFE@FYBNQMFT@GPSͷ͍ํ
w TVCKFDUΛۃྗഉআ w কདྷͷมߋʢϦϑΝΫλϦϯάʣʹରͯ͠։͔ΕͨςετΛॻ͘ w ෳࡶͳςετέʔείϝϯτΛ͢ w ςετϑΝΠϧͷ໋໊نଇΛઃ͚Δ w ࣮ߦΛҙࣝͨ͠ςετίʔυΛॻ͘ w ॳظσʔλͷ४උํ๏ CFGPSF BMM CFGPSF FBDI MFUMFU w ςετͷׂ୯Ґ DPOUFYU
34QFDͷػೳͱ͍͚ IUUQTSFMJTIBQQDPNSTQFDSTQFDDPSFWEPDT
EFTDSJCFDPOUFYUJU w EFTDSJCF w FYBNQMFHSPVQ ෳͷςετέʔε Λએݴ͢Δ%4- w DPOUFYU w
ذॲཧॲཧલఏͳͲɺςετͷจ຺ Λએݴ͢Δ%4- w JU w ݸผͷςετέʔεΛએݴ͢Δ%4-
DPOUFYUͷ͚ํ Α͋͘Δྫͷհ w ଟ͘ͷέʔεͰςετ͍ͨ͠ذຖʹ DPOUFYUΛ͚ͯॻ͘ਓ͕ଟ͍ͱࢥ͏ w ಉ݁͡ՌͱͳΔՕॴΛςετ͢Δ߹ γϯϓϧʹۉׂͯ͠͠·͏ͱςετ ίʔυ͕͘ͳΓ͕ͪͰɺ TIBSFE@FYBNQMFT@GPSͷΑ͏ͳ%3:
ͳॻ͖ํΛͨ͠Γ͢Δ
DPOUFYUͷ͚ํ TIBSFE@FYBNQMFT@GPSΛΘͣ%3:ʹ
ॲཧॱͱείʔϓΛཧղ͢Δ MFUMFUCFGPSF ͓֮͑ͯ͘͜ͱ ɾجຊMFUΛ༻͠ɺෆཁʹσʔλ͕࡞ΒΕΔ͜ͱΛආ͚Δ ɾࣄલॲཧείʔϓΛҙࣝͯ͠CFGPSFΛ͏ ɾඞཁͳ߹ͷΈMFUΛ͏
MFUMFUCFGPSF #"%$"4&4 w MFUΑΓMFUΛ͏ w ࣄલ࣮ߦ͞Εͯ͠·͏ͷͰɺม͕ෆཁͳJUͰ࣮ߦ ͞Εͯ͠·͏ w CFGPSFదͳείʔϓͰ͏ w
MFUͱಉ༷ͷཧ༝ w ॲཧ༰ʹΑͬͯCFGPSF BMM ͱ͢Δ͜ͱͰݺͼग़͠Λճ ͚ͩʹ͢Δ͜ͱ͕Ͱ͖Δ
TVCKFDU
TVCKFDU w TVCKFDUςετରΛݻఆԽͤ͞Δ্Ͱศར͕ͩʜ w ςετέʔε͕ଟ͘ͳΔʹͭΕɺԿΛςετ͍ͯ͠Δ ͷ͔Θ͔Γʹ͘͘ͳΔ w ߦ͕ଟ͘ͳΔͱɺಉ͡ςετൣғͱೝࣝ͢Δज़͕Π ϯσϯτʹͳͬͯ͘ΔͷͰਏ͍ w
͏߹ʹMFUͷ໋໊نଇDPOUFYUͷઆ໌จΛͬ͠ ͔Γॻ͍ͨํ͕ϨϏϡʔ͍͢͠
TVCKFDU w ͦͷTVCKFDUɺຊʹඞཁʁ w γϯϓϧͳॲཧͳΒTVCKFDU͕ͳ͍ํ͕ݟ͍͢ w ݟ͍͢ϙΠϯτ w ݸʑͷDPOUFYUΛݟΔ͚ͩͰςετରͷϝιου ड͚͍ͯ͠Δม͕ཧղՄೳ
TVCKFDU w ͦͷTVCKFDUɺຊʹඞཁʁ w ୭ͰཧղͰ͖ΔൣғͷϩδοΫͳ ΒɺMPPQॲཧΛςετͰॻ͍ͯྑ ͍ w ˡͷDBTFͷΑ͏ʹɺ34QFDͷग़ྗʹ ۩ମతͳςετέʔεΛॻ͖ɺࣦഊ
ͨ͠߹ͷςετՕॴΛݟ͘͢͢ Δඞཁ w σόοάϙΠϯτΛஔ͍ͯͷσόοά ͕Γʹ͍͘ͷͰɺέʔε͕ଟ͘ ͳͬͨΓॲཧ͕ෳࡶͳ߹ʹΘ ͳ͍Α͏ʹ͢Δ
TIBSFE@FYBNQMFT@GPSͷ׆༻ྫ IUUQTZTLQSPIBUFOBCMPHDPNFOUSZSFQMBDF@DPOTUSVDUPS@XJUI@GBDUPSZ@NFUIPE͔Βഈआ
TIBSFE@FYBNQMFT@GPSͷ׆༻ྫ IUUQTZTLQSPIBUFOBCMPHDPNFOUSZSFQMBDF@DPOTUSVDUPS@XJUI@GBDUPSZ@NFUIPE͔Βഈआ
DIBOHF IUUQTTQFBLFSEFDLDPNLJTTIZTIJKJBOSTQFDBUOJLPUBNBEPUSCOVNCFS TMJEF͔Βഈआ
DIBOHF IUUQTTQFBLFSEFDLDPNLJTTIZTIJKJBOSTQFDBUOJLPUBNBEPUSCOVNCFS TMJEF͔Βഈआ w NPDLศར͕ͩ͏໘Λߟ͑ Δ w جຊతʹςετϝιουͷ݁Ռͷ ݕূʹूத͢Δ w
෦ॲཧΛςετ͢Δͷɺ֎෦α ʔϏεΛར༻͍ͯ͠ΔͰϝιου ͷ݁Ռ͕ݕূͰ͖ͳ͍߹ w QVTI௨ϝʔϧ͕ૹΒΕ͔ͨ
GBDUPSZ@CPU w ςετͷࣄલσʔλΛCFGPSFͰ४උ͢ Δͱ w ςετίʔυ͕͘ͳΓɺϨϏϡʔ͕ ਏ͘ͳΔ w .PEFMͷςετ$POUSPMMFSͷςε τͰಉ͡ςετσʔλΛ४උ͢Δඞཁ
͕͋Γ w TIBSFE@DPOUFYUผϑΝΠϧ͔Βಡ Έ͍ͨͱ͖ʹIFMQFSԽ͢ΔͳͲਏ͍
GBDUPSZ@CPU w ςετͷຊےʹؔͳ͍લॲཧ%3:ʹ͠ ͯߦͬͨํ͕ςετ͕ॻ͖͍͢ಡΈ ͍͢ w TIBSFE@DPOUFYUΑΓผͷςετͰ࠶ར ༻͘͢͠ɺͲ͜ʹॻ͍ͯ͋Δͷ͔ GBDUPSZ@CPUͷൣғͳͷͰཧղ͍͢͠
͓·͚ ଞʹศརͳ34QFDͷ͍ํ w )FMQFSNFUIPET w IUUQTSFMJTIBQQDPNSTQFDSTQFDDPSFWEPDTIFMQFSNFUIPET BSCJUSBSZIFMQFSNFUIPET w 'JMUFST w
IUUQTSFMJTIBQQDPNSTQFDSTQFDDPSFWEPDTIPPLTpMUFST w 7$3 w IUUQTHJUIVCDPNWDSWDS
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠