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
LT「データまえしょりすとのためのpytest入門」@みんなのPython勉強会#46
Search
komo_fr
June 12, 2019
Technology
5
3.1k
LT「データまえしょりすとのためのpytest入門」@みんなのPython勉強会#46
Event Page:
https://startpython.connpass.com/event/124251/
Twitter:
https://twitter.com/komo_fr
komo_fr
June 12, 2019
Tweet
Share
More Decks by komo_fr
See All by komo_fr
Bokeh & Dash Cytoscape 〜 Pythonによるインタラクティブなネットワーク可視化ライブラリの比較 / PyConJP2021
komofr
0
800
Dash Cytoscape 〜 Pythonによるインタラクティブ・ネットワーク可視化入門 / StartPython#67
komofr
0
1.7k
Dash Cytoscapeで始めるネットワーク可視化 / plotly dash book
komofr
0
660
(修正版) NumPy/pandas使いのためのテスト自動化入門 / PyConJP2020
komofr
32
12k
[Python Charity Talks in Japan] LT: ネットワーク解析とテキスト解析で見るPEP / pycharity
komofr
0
1.4k
PyPI翻訳プロジェクト速報 / PyLadies Tokyo LT
komofr
1
510
pandasのStyling機能で強化するJupyter実験レポート / PyConJP 2019
komofr
15
28k
EuroPython 2019 LT / Let's Explore PEPs with NetworkX!
komofr
2
1k
PyLadies Tokyo Meetup #41 | SQLユーザのためのpandas入門 第2部
komofr
1
630
Other Decks in Technology
See All in Technology
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
420
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
540
Android Audio: Beyond Winning On It
atsushieno
0
2.4k
株式会社ログラス - 会社説明資料【エンジニア】/ Loglass Engineer
loglass2019
4
65k
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
190
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
470
Agile PBL at New Grads Trainings
kawaguti
PRO
1
450
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
580
roppongirb_20250911
igaiga
1
240
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
190
「その開発、認知負荷高すぎませんか?」Platform Engineeringで始める開発者体験カイゼン術
sansantech
PRO
2
130
react-callを使ってダイヤログをいろんなとこで再利用しよう!
shinaps
2
260
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
A Modern Web Designer's Workflow
chriscoyier
696
190k
A better future with KSS
kneath
239
17k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Side Projects
sachag
455
43k
Designing for Performance
lara
610
69k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Being A Developer After 40
akosma
90
590k
It's Worth the Effort
3n
187
28k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Transcript
σʔλ·͑͠ΐΓ͢ͱͷ QZUFTUೖ %BUF &WFOUΈΜͳͷ1ZUIPOษڧձ IUUQTTUBSUQZUIPODPOOQBTTDPNFWFOU 4QFBLFS!LPNP@GS 5PNPLP'VSVLJ
w!LPNP@GS 5PNPLP'VSVLJ w ͓͠͝ͱ w ҩྍը૾ใγεςϜͷ։ൃʢઃܭ࣮ʣ w 1ZUIPOͰσʔλ׆༻ͷ1P$࡞ w
ϑϦʔ w ͨ·ʹ1ZUIPOຊͷϨϏϡʔΛͬͯΔ w ʰ1ZUIPOʹΑΔ͋ͨΒ͍͠σʔλੳͷڭՊॻʱᠳӭࣾ w ʰͰ͖Δࣄ͕͔ͲΔ1ZUIPOࣗಈॲཧશ෦ೖΓɻʱΠϯϓϨε !2 8IPBN*
ςετࣗಈԽܦݧ͋Μ·Γͳ͍ σʔλલॲཧ͕ ʰςετۦಈ1ZUIPOʱΛಡΜͰ QZUFTUೖ͢Δ·Ͱͷաఔ ࠓ͢͜ͱ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !4 ͓ࣄͷྲྀΕ࣌ͷΈ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !5 ͓ࣄͷྲྀΕ࣌ͷΈ ͜ͷ࣌Ͱɺ ͜ͷίʔυ͕࠶ͼ ΘΕΔ͔Ͳ͏͔Θ͔Βͳ͍ʜʜ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !6 ͓ࣄͷྲྀΕ࣌ͷΈ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !7 ͓ࣄͷྲྀΕ࣌ͷΈ ͕ࣗॻ͍ͨΫιίʔυͷ मਖ਼ɾϦϑΝΫλϦϯάɾ෦Խ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !8 ͓ࣄͷྲྀΕ࣌ͷΈ ੜσʔλͷόϦΤʔγϣϯ૿ ʢલॲཧͷόϦΤʔγϣϯ૿ʣ ͕ࣗॻ͍ͨΫιίʔυͷ मਖ਼ɾϦϑΝΫλϦϯάɾ෦Խ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !9 ͓ࣄͷྲྀΕ࣌ͷΈ ੜσʔλͷόϦΤʔγϣϯ૿ ʢલॲཧͷόϦΤʔγϣϯ૿ʣ ͕ࣗॻ͍ͨΫιίʔυͷ मਖ਼ɾϦϑΝΫλϦϯάɾ෦Խ
w ࣌ͷࢲͷςετίʔυΛॻ͘εΩϧ w Ҏલ։ൃʹ͍͕ͨɺςετࣗಈԽ͞Ε͍ͯͳ͍ڥͩͬͨ w ʢؾ͕ڰ͍ͦ͏ͩͬͨʣ w ݸਓͰ044ʹػೳՃͷQVMMSFRVFTUΛૹΔͱ͖ʹɺ ඞཁʹഭΒΕͯςετίʔυΛॻ͍ͨ͜ͱ͋Δ QZUFTU
w ͨͩ͠ɺৗతʹॻ͚͍ͯΔΘ͚Ͱͳ͍ !10 ςετίʔυΛॻ͍ͯਫ਼ਆͷۉߧΛอ͍ͪͨ
ؾ͕ڰ͍ͦ͏ͳ టष͍લॲཧͷ܁Γฦ͠Λɺ ςετࣗಈԽͰ গ͠Ͱָʹ͍ͨ͠ʜ
ςετࣗಈԽ ಋೖͷ͖͔͚ͬ !12
w ςετͷೖʹ͍͍ͯΔʢͱࢥ͏ʣίʔυ w ग़ྗ͕໌֬ͰɺԿճमਖ਼͢Δػձ͕͋Δίʔυ w ࢲͷ߹ w ϩʔΧϧʹ͋ΔIUNMϑΝΠϧ͔ΒσʔλΛநग़ͯ͠ɺ DTWܗࣜʹม͢Δࣗ࡞લॲཧπʔϧ w
ग़ྗ͕໌֬ͳͷͰɺςετΛॻ͖͍͢ w ೖྗɺͨ·ʹఆ͠ͳ͍ܗࣜͷIUNM͕དྷΔ w मਖ਼ͷػձ͕Կճൃੜ͢Δ !13 ͖͔͚ͬͪΐ͏Ͳྑ͍ࡐ͕͋ͬͨ
w +VQZUFS/PUFCPPLͰॻ͖ԥΔɺճ͖ͬ͜Γͷίʔυ w ػցֶशϞσϧɺ ग़ྗ͕֬తͰৗʹಉ͡ͱݶΒͳ͍έʔε w ݸਓతʹॻ͖ͩ͘ͱࢥ͏͠ॻ͖͍͕ͨɺ ࠷ॳγϯϓϧͳέʔεʹͨ͠ํ͕ྑ͍͔ w ࢲΑ͘Θ͔ΒΜͷͰɺ
͜ͷลৄ͍͠ਓ͕͍ͨΒ࠙ձͰڭ͍͑ͯͩ͘͞ !14 ςετೖʹ͍͍ͯͳ͍ʢͱࢥ͏ʣίʔυ
w σʔλαΠΤϯεܥͷఆ൪044Ͱ࠾༻͞Ε͍ͯͨ w OVNQZ QBOEBT NBUQMPUMJCʜʜ w ॻ͖ํʹࠔͬͨΒɺ͜ͷลͷίʔυΛࢀߟʹ͠Α͏ͱࢥͬͨ w ͪΐ͏Ͳʰςετۦಈ1ZUIPOʱ
ᠳӭࣾ ͕ ൃച͞ΕͨλΠϛϯάͩͬͨ !15 ԿͷπʔϧΛ͏͔QZUFTUΛબ ը૾ɿ IUUQTXXXTIPFJTIBDPKQCPPLEFUBJM
w ʢݸਓతʹʣຊͷ༰Λᘳཧղͯ͠ɺ ͍͖ͳΓϕετϓϥΫςΟΫεΛΖ͏ͱͯ͠ଓ͔ͳ͍ w ຊͰհ͞Ε͍ͯΔશ͕ͯɺࣗͷέʔεͰඞཁͱݶΒͳ͍ w िɿେࡶʹಡΜͰ֓ཁΛѲ͠ɺ·ͣࡶʹ࢝ΊΔ w िɿࡶͰ͍͍͔Βɺܧଓͯ͠ఆணͤ͞Δ w
िʙɿඞཁʹԠͯ͡ɺຊެࣜυΩϡϝϯτΛݟָͯʹ͢Δ !16 ಋೖͷํ
w ͩΒͩΒJOQVUʹภΒͳ͍Α͏ʹɺظඪΛܾΊΔ w ʰ࣮Ͱॻ͍͍ͯΔίʔυʹରͯ͠ɺԿͰྑ͍͔ΒͭҎ্ͷؔʹςε τίʔυΛՃ͢Δʢ༵ۚ·Ͱʣʱ w ݄ʙͷؒʹʰςετۦಈ1ZUIPOʱશମΛ௨ಡ͢Δ w ֓ཁΛѲ͢Δͷ͕త w
͋ͨΓେମʙ࣌ؒ͘Β͍ w ࣌ؒͷ߹্શͯͷจষΛ͔ͬ͠ΓಡΉ͜ͱͰ͖ͳ͍ w ͨͩ͠ɺίϚϯυ࣮ࡍʹଧͬͯࢼͨ͠ w "QQFOEJYͷ֦ுػೳʹؔ͢ΔτϐοΫɺ࠷ॳඈͨ͠ !17 ि ֓ཁΛѲͯ͠ɺ·ͣࡶʹ࢝ΊΔʣ
w ςετ͍͢͠෦Λத৺ʹɺςετίʔυΛॻ͍͍ͯ͘ w IUNMQBOEBTͷ%BUB'SBNFͷม෦ w ࡶɺͱ w UNQEJSͱ͔ΘͣʹɺςετͰग़ྗ͞ΕͨϑΝΠϧखಈͰফ͢ w ྫ֎ॲཧ෦ͷςετͱΓ͋͑ͣޙճ͠
w ֦ுػೳΛೖΕΔ w QZUFTUqBLF w QZUFTUDPW !18 ि ࡶͰ͍͍͔Βɺܧଓͯ͠ఆணͤ͞Δʣ
w ߦྻͷฒͼ·ͰݫີʹνΣοΫ͍ͨ͠έʔεɺ ཁૉͷ͑͞߹͍ͬͯΕྑ͍έʔεɺ৭ʑʜʜ w QBOEBTUFTUJOHϞδϡʔϧ w BTTFSU@GSBNF@FRVBM w BTTFSU@TFSJFT@FRVBM
w QBOEBTͷςετίʔυࣗମ͕αϯϓϧͱͯ͠ࢀߟʹͳΔ !19 QBOEBTͷ%BUB'SBNFΛͲ͏ൺֱ͢Δʁ 5FTUJOH'VODUJPOɿ IUUQTQBOEBTQZEBUBPSHQBOEBTEPDTTUBCMFSFGFSFODF HFOFSBM@VUJMJUZ@GVODUJPOTIUNMUFTUJOHGVODUJPOT
w ஈʑςετίʔυ͕૿͖͑ͯͯɺࢧো͕ग़ͯ͘Δ w ςετաఔͰੜͨ͡ϑΝΠϧΛUNQEJSͰࣗಈͰফ͢ w ϑΟΫενϟͬͯΈΔ w ෦తʹςετ࣮ߦ͢Δ w ͳͲͳͲʜ
w ʰςετۦಈQZUIPOʱΛࡧҾతʹ͍ͳ͕Βಋೖ w Χόʔ͍ͯ͠ͳ͍෦ެࣜυΩϡϝϯτΛࢀর !20 िʙʢඞཁʹԠͯ͡ɺָʹ͢Δʣ
w ྫ֎ॲཧ෦ʹςετΛೖΕΔ w ఆέʔε w େྔͷσʔλΛॲཧ͢ΔதͰɺఆ͍ͯ͠ͳ͍ϑΥʔϚοτͷσʔ λ͕དྷͨ߹ɺྫ֎Λൃੜͤͯ͞ϩάΛग़͠ɺΓͷσʔλͷ ॲཧΛଓ͚͍ͨ w ࢭ·ͬͯཉ͘͠ͳ͍͕ɺϩά͔ͬ͠Γग़ͯ͠΄͍͠
w ςετ͍ͨ͜͠ͱɿ w ظ௨Γྫ֎͕ൃੜ͢Δ͔ QZUFTUSBJTF w FYDFQU۟ͷத͕ظ௨Γಈ͍͍ͯΔ͔ NPDL !21 िʙʢඞཁʹԠͯ͡ɺָʹ͢Δʣ
w ਫ਼ਆͷ҆ఆ͕ͳ͍ w ίʔυ͕͓͔͍͠ͷ͔ɺҙਤ͠ͳ͍σʔλܗ͕ࣜདྷͨͷ͔Γ ͚͍͢ w ϦϑΝΫλϦϯά࣌ͷ҆৺ײ w ޙͰ͏࣌ɺςετίʔυ͕༷ΘΓʹͳΔ w
టष͍લॲཧͷίʔυɺ༷టष͘ͳΓ͍͢ w ͨͩظӡ༻ͯ͠ͳ͍ͷͰɺ ظӡ༻ͨ࣌͠ͷ·ͩΑ͘Θ͔Βͳ͍ !22 ͬͯΈͨॴײ
͓·͚ͷใ !23
w ʰ(FUUJOH4UBSUFE5FTUJOHJO%BUB4DJFODFʱ w 1Z$PO64ͷτʔΫ QZWJEFPPSHͰ؍ΕΔ w ςετʹ͓͚Δσʔλܥಛ༗ͷʹ৮Εͨޙɺ QZUFTUͷଞɺ)ZQPUIFTJTʹΑΔ%BUB'SBNFͷςετσʔλੜ ͳͲͷ5JQTΛհ͍ͯ͠Δɻ
w εϥΠυ࠷ޙͷࢀߟจݙͰɺ աڈͷ1Z$POͷςετؔͷτʔΫ͕·ͱΊΒΕ͍ͯΔɻ !24 σʔλܥͷͨΊͷςετࣗಈԽใ QZWJEFPɿ IUUQTQZWJEFPPSHQZDPOVTHFUUJOHTUBSUFEUFTUJOHJOEBUBTDJFODFIUNM TMJEF IUUQTTQFBLFSEFDLDPNQZDPOKFTGPSEHFUUJOHTUBSUFEUFTUJOHJOEBUBTDJFODF
w σʔλલॲཧటष͘ͳΓ͕ͪ w QZUFTUಋೖͰɺগ͠Ͱਫ਼ਆͷۉߧΛอͱ͏ w 0VU͕໌֬ͳσʔλίϯόʔτπʔϧɺ ൺֱతςετͷೖʹ͍͍ͯΔʜʜͱࢥ͏ w ·ͩงғؾͰͬͯΔͷͰɺ σʔλܥͷςετίʔυͷʹৄ͍͠ํ͕͍ͨΒɺ
࠙ձͰڭ͍͑ͯͩ͘͞ w ʰςετۦಈ1ZUIPOʱͱͯྑ͍ຊͰ͢ !25 ·ͱΊ
Ұ෦ϨϏϡʔʹࢀՃ͠·ͨ͠
5IBOLZPVGPS MJTUFOJOH !27