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
870
法律に準拠した本人確認システムを0から作った話 〜家計簿プリカB/43でのeKYC開発実例〜
shoheimitani
2
920
初めましてが多いチームの形成期に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
5
5.7k
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
222
9k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
800
Typedesign – Prime Four
hannesfritz
40
2.4k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
Become a Pro
speakerdeck
PRO
26
5k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
510
RailsConf 2023
tenderlove
29
930
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
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠