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
PhpStormとPHPUnitを連携してユニットテスト作成を楽にする ver.phpcons...
Search
tenkoma (Koji Tanaka)
January 26, 2019
Technology
0
4.2k
PhpStormとPHPUnitを連携してユニットテスト作成を楽にする ver.phpconsen / integrating-phpunit-with-a-phpstorm-ver-phpconsen
2019/1/26 にPHPカンファレンス仙台2019でお話しするトークのスライドです。
tenkoma (Koji Tanaka)
January 26, 2019
Tweet
Share
More Decks by tenkoma (Koji Tanaka)
See All by tenkoma (Koji Tanaka)
PhpStormでコードを理解する技術 / How to use PhpStorm to understand the code
tenkoma_
0
3.4k
PhpStormとPHPUnitを 連携してユニットテスト 作成を楽にする / Integrating PHPUnit with a PhpStorm
tenkoma_
1
650
CakeFest 2019について / About CakeFest 2019
tenkoma_
0
4.1k
ユニットテストを書きやすくするためにテストスイートを拡張する / Extend test suite to make unit test easier to write
tenkoma_
0
2.8k
BASE の PHP アプリ アップデートについて
tenkoma_
0
4.5k
CircleCI 2.0 で CakePHP3 アプリのビルド
tenkoma_
0
2k
GitLab CI + Review Apps で簡易レビュー環境
tenkoma_
4
3.1k
CakePHP プロジェクトにプルリクを送り続けた僕は
tenkoma_
0
640
Webpack勉強会 JavaScriptビルド編
tenkoma_
1
2k
Other Decks in Technology
See All in Technology
AWSで始める実践Dagster入門
kitagawaz
1
620
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
420
株式会社ログラス - 会社説明資料【エンジニア】/ Loglass Engineer
loglass2019
4
64k
AI開発ツールCreateがAnythingになったよ
tendasato
0
130
S3アクセス制御の設計ポイント
tommy0124
3
200
スマートファクトリーの第一歩 〜AWSマネージドサービスで 実現する予知保全と生成AI活用まで
ganota
2
220
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.5k
dbt開発 with Claude Codeのためのガードレール設計
10xinc
2
1.2k
機械学習を扱うプラットフォーム開発と運用事例
lycorptech_jp
PRO
0
400
AIエージェント開発用SDKとローカルLLMをLINE Botと組み合わせてみた / LINEを使ったLT大会 #14
you
PRO
0
130
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
1
570
slog.Handlerのよくある実装ミス
sakiengineer
4
240
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Producing Creativity
orderedlist
PRO
347
40k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Typedesign – Prime Four
hannesfritz
42
2.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
4 Signs Your Business is Dying
shpigford
184
22k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Optimizing for Happiness
mojombo
379
70k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Transcript
1IQ4UPSNͱ1)16OJUΛ ࿈ܞͯ͠Ϣχοτςετ ࡞Λָʹ͢Δ 1)1ΧϯϑΝϨϯεઋ ాத࣏!UFOLPNB
࠷ۙɺϢχοτςετ ॻ͚ͯ·͔͢ʁ
ςετॻ͍࣮ͯߦͷ܁Γฦ͠ ͕໘ͩͱࢥͬͨ͜ͱ ͋Γ·͔͢ʁ
1IQ4UPSNͱ1)16OJUΛ࿈ܞ ͢Δͱςετ࡞ָ͕ʹͳΓɺ ίʔυཧղ͘͢͠ͳΓ·͢ ࢼͯ͠Έ͍ͯͩ͘͞
ͪͳΈʹ 1IQ4UPSNΛ͍ͬͯΔํ !
͢Ͱʹ1)16OJUͱ࿈ܞͯ͠ ςετॻ͍ͯΔΑͱ͍͏ํ
͢͜ͱ w1)16OJUͱɺ1IQ4UPSN࿈ܞͱ w࿈ܞͰ͖ͯͳ͔ͬͨ։ൃڥ w࿈ܞͷઃఆ wϢχοτςετ࡞͕Ͳ͏ָʹͳΔ͔ σϞ͋Γ w❌Ϣχοτςετͷجຊతͳॻ͖ํ w❌1IQ4UPSNͷجຊతͳ͍ํ
ࣗݾհ wాத࣏ 5BOBLB,PKJ w!UFOLPNB (JU)VC 5XJUUFSʜ w#"4&גࣜձࣾ1SPEVDU%JWJTJPO #BDLFOE&OHJOFFS
ʙ w1)1$BLF1)1όʔδϣϯΞοϓɾϞόΠϧΞϓϦόοΫΤ ϯυ։ൃ wϢχοτςετͷ͢͠͞ɺ҆ఆੑͷվળ w$POUSJCVUFEUP$BLF1)1
1)16OJUͱ 1IQ4UPSN࿈ܞͱ
1)16OJU w 1)1ίʔυͷϢχοτςετΛॻͨ͘Ί ͷϑϨʔϜϫʔΫ w ଟ͘ͷ1)1ϥΠϒϥϦͰΘΕ͍ͯΔ w 8FCΞϓϦέʔγϣϯͷςετج൫ͱ͠ ͯΘΕΔ ˞େن1)1ϓϩδΣΫτͰ1)16OJUΛ̏ੈΞοϓάϨʔυ͢ΔͨΊʹͬͨ͜ͱ
IUUQTTQFBLFSEFDLDPNEROFPQIQVOJUVQHSBEFTUPSZ TMJEF Λࢀߟʹ͠·ͨ͠
1)16OJU WFOEPSCJOQIQVOJU ΞΠίϯը૾ IUUQTQJYBCBZDPNKBVTFSTNU[E ςετ࣮ߦ ςετ݁Ռ ࣮ߦ ݁ՌΛݕূ QIQVOJUίϚϯυ ͯ͢ύε
ͭҎ্ࣦഊ ςετέʔε ςετ͍ͨ͠ ΞϓϦέʔγϣϯ ίʔυ
1IQ4UPSN w 1IQ4UPSN1)1ΞϓϦέʔ γϣϯͷͨΊͷ౷߹։ൃڥ *%& w ΤσΟλɾσόοΨ࿈ܞɾ੩ తղੳɾόʔδϣϯཧFUD
1IQ4UPSNͱ࿈ܞ WFOEPSCJOQIQVOJU ίϚϯυ࣮ߦ ݁ՌΛऔಘͯ͠දࣔ ࿈ܞ͢Δ͜ͱͰɺ 1IQ4UPSN͔Βςετ ࣮ߦͰ͖Δ ςετέʔε ΞϓϦέʔγϣϯίʔυ
࿈ܞͰ͖ͯͳ͔ͬͨ։ൃڥ $BLF1)1ΞϓϦ
$BLF1)1ݻ༗ͷࣄ $BLF1)1 5FTU4IFMM ίϚϯυ࣮ߦ ݁ՌΛऔಘͯ͠දࣔ ςετέʔε ΞϓϦέʔγϣϯίʔυ w ςετ࣮ߦίϚϯ υ͕ΧελϚΠζ
͞Ε͍ͯΔ
ΤσΟλͰίʔυมߋ λʔϛφϧʹΓସ͑ͯςετ࣮ߦ ʜ܁Γฦ͠ʜ
ΤσΟλͰίʔυมߋ λʔϛφϧʹΓସ͑ͯςετ࣮ߦ ʜ܁Γฦ͠ʜ
ΤσΟλͰίʔυมߋ λʔϛφϧʹΓସ͑ͯςετ࣮ߦ ʜ܁Γฦ͠ʜ
ΤσΟλͰίʔυมߋ λʔϛφϧʹΓସ͑ͯςετ࣮ߦ ʜ܁Γฦ͠ʜ
গ͠1)1ίʔυΛՃͨ͠Β ࿈ܞͰ͖ͨͷͰϒϩάهࣄॻ͍ͨ IUUQTUFOLPNBIBUFOBCMPHDPNFOUSZ $BLF1)1ͰΞϓϦ։ൃͯ͠Δํࢀߟʹ
࿈ܞͷઃఆ
આ໌༻։ൃڥ EPDLFSDPNQPTF $BLF1)1ΞϓϦ w IUUQTHJUIVCDPN UFOLPNB DBLFQIQ@DNT w %PDLFSͰߏங w
$BLF1)1ެࣜͷνϡʔ τϦΞϧͰ࡞ͬͨ $BLFΞϓϦʹςετ ΛՃ
։ൃڥىಈ $ git clone https://github.com/ tenkoma/cakephp_cms.git $ cd cakephp_cms $
make $ make migrate w ઃఆલʹίϯςφΛىಈ͓ͯ͘͠ w 1IQ4UPSNͰDBLFQIQ@DNTϑΥϧμΛ։͘
1)1$-* 5FTU'SBNFXPSLT ͷઃఆ ˞͔͚Ͱઆ໌͠·͕͢ɺεΫϦʔϯγϣοτΛ ଟΊʹࡌ͍ͤͯΔͷͰɺޙ΄Ͳ֬͝ೝ͍ͩ͘͞
ઃఆ1)1$-* w 1SFGFSFODFT1)1 w $-**OUFSQSFUFSະબʹͳ͍ͬͯΔ w ʮʜʯΛબ
ઃఆ1)1$-* w ʮʴʯˠʮ'SPN%PDLFSʜʯΛબ w 1)1࣮ߦڥΛՃ͢Δ
ઃఆ1)1$-* w ʮ%PDLFS$PNQPTFʯˠʮQIQDMJʯΛબͯ͠ʮ0,ʯ w ϦϞʔτ࣮ߦڥΛબ͢Δ
ઃఆ1)1$-* w ίϯςφͷ1)1 όʔδϣϯ͕ද ࣔ͞ΕͨΒ0, w දࣔ͞Εͳͯ͘ େৎͳ͜ͱ ͋Δ
ઃఆ5FTU'SBNFXPSLT w දࣔ͞ΕΔμΠΞϩάͰbQIQDMJ`Λબͯ͠0, w b-PDBM`ͱ͍͏ઃఆআ͠·͠ΐ͏
ઃఆ5FTU'SBNFXPSLT w 1)16OJUͷόʔδϣϯ͕දࣔ͞ΕͨΒ0,
Ϣχοτςετ࡞͕ Ͳ͏ָʹͳΔ͔
1IQ4UPSN͔Β ςετΛ࣮ߦ͢Δ w ςετϑΝΠϧɾςετϝιο υɾϑΥϧμશ෦ w ࣦഊͨ͠ςετͷΈ࠶࣮ߦ w ࣦഊͨ͠ςετ݁Ռ͔Βίʔυ δϟϯϓ
σϞ
None
w λʔϛφϧͱ*%&ΛΓସ͑ͣʹࡁ Ή w ಛఆͷϝιου͚࣮ͩߦ͍ͨ͠ͱ͖ ʹ--filter=testSomethingͳ ͲͱࢦఆͤͣʹࡁΉ ϝϦοτ
ςετ࣮ߦ͠ͳ͕Β σόοά w ࣦഊͨ͠6TFST$POUSPMMFSMPHJO ϩάΠϯ ػೳ ͷ్தʹϒϨʔΫϙΠϯτΛઃఆͯ͠ม Λ֬ೝͯ͠ΈΔ w
ϦΫΤετͰ*%1BTTXPSE͕1PTU͞Ε͍ͯΔ ͔֬ೝ 7BSJBCMFTͰΠϯΫϦϝϯλϧαʔν w ʮ$PQZ7BMVF"TʜʯͰ࣮ߦதͷม͔Βς ετσʔλΛ࡞
σϞ
None
ϝϦοτ w ϒϨʔΫ͢Δͱςετதͷม ͕؆୯ʹ֬ೝͰ͖Δ w ࣮ߦதͷมΛίϐϖͯ͠؆ ୯ʹςετσʔλΛ࡞ΕΔ
ςετ࣮ߦ࣌ͷΧόϨοδ ΛΤσΟλϑΝΠϥʹදࣔ w 6TFST$POUSPMMFS5FTUͰl3VO UFTUT 1)16OJU XJUI$PWFSBHFz w ʮ1SPKFDUʯύωϧʹߦΧόϨοδ͕ දࣔ͞ΕΔ
w ςετͰ͖ͯͳ͍ίʔυΛݟ͚ͭΔ w ςετΛՃͯ͠࠶࣮ߦ
σϞ
w 1SPKFDUύωϧϑΥϧμϑΝΠϧ͝ͱͷߦΧόϨοδ͕දࣔ͞ΕΔ w ҹςετͰ࣮ߦ͞Ε͍ͯͳ͍ߦ
ϝϦοτ w ίʔυ͕ςετͰ࣮ߦͰ͖͍ͯΔ͔ ͷௐ͕ࠪ͘͢͠ w Ͳͷߦ͕࣮ߦͰ͖͍ͯΔ͔֬ೝ͠ͳ ͕Βςετ࡞Λࢼߦࡨޡ͢Δ w ߦΧόϨοδΛࢦ͞ͳ͍ ߹Ͱศར
·ͱΊ 1IQ4UPSNͱ1)16OJUΛ࿈ܞ͢Δͱ w 1IQ4UPSN͔Βςετ࣮ߦͰ͖ͯɺख ͕ؒݮΔ w σόοά͠ͳ͕Βͷௐ͕ࠪ͘͢͠ͳΔ w ΧόϨοδΛݟͳ͕ΒςετΛॻ͘ͱίʔ υ͕࣮ߦͰ͖͍ͯΔ͔Ѳ͍͢͠