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
法律に準拠した本人確認システムを0から作った話 〜家計簿プリカB/43でのeKYC開発実例〜
shoheimitani
2
860
初めましてが多いチームの形成期にEMが取り組んだ事
shoheimitani
1
160
ユーザーフレンドリーな取引明細のアーキテクチャ 〜VISAカードの複雑性に向き合う実践例〜
shoheimitani
5
2.5k
孤独のCTOグルメという やや奇抜な企画をやった目的と効果
shoheimitani
3
1.4k
VISAカードの裏側と “手が掛かる” 決済システムの育て方
shoheimitani
41
21k
32個のPRでリリースした依存度の高いコアなモデルの安全な弄り方
shoheimitani
8
7.1k
本番環境のRailsでYJITをONにしてみた結果
shoheimitani
0
150
7つの入金外部サービスと連携して分かった実践的な”状態管理”設計パターン3選
shoheimitani
5
5.6k
監視を通じたサービスの逐次的進化 ~B/43の決済サービスでの取り組み~ / Kaigi on Rails 2021
shoheimitani
1
2.1k
Featured
See All Featured
Being A Developer After 40
akosma
87
590k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Facilitating Awesome Meetings
lara
50
6.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Done Done
chrislema
181
16k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
Unsuck your backbone
ammeep
668
57k
Rails Girls Zürich Keynote
gr2m
94
13k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Building Applications with DynamoDB
mza
90
6.1k
Designing for Performance
lara
604
68k
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
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠