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
GCP使ってテスト自動化したい.pdf
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
シュプレ
December 08, 2018
Technology
260
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GCP使ってテスト自動化したい.pdf
シュプレ
December 08, 2018
More Decks by シュプレ
See All by シュプレ
エンジニア(?)にオススメの本
spre55
0
170
PHPエンジニアが転職してGoを書き始めたら楽しくなってきた話.pdf
spre55
2
1.3k
はじめてのCode4兄弟
spre55
0
330
2016HACKDAYS_52_HelloAgain
spre55
0
86
LANケーブル圧着入門
spre55
0
120
できるSEO! ver 2.1
spre55
0
67
Web班番外編 jQuery
spre55
0
140
pre講義 jQuery
spre55
0
110
Other Decks in Technology
See All in Technology
失敗を経て、Harness Engineering で 大切にしたいことを考える / Learning from Failure: What Matters in Harness Engineering
bitkey
PRO
1
310
Claude Code×Terraform IaC テンプレート駆動開発
itouhi
1
490
ACE-Step-1.5で見る 音楽生成AIのしくみと“破綻だけ直す”Retake機能の開発【zennfes spring 2026 登壇資料】
personabb
1
130
スキルと MCP ツール、責務をどう分けるか? AI が迷わないインターフェース設計の戦略
cdataj
1
950
MCP Appsを作ってみよう
iwamot
PRO
4
530
2026TECHFRESH畢業分享會 - 葬送的通靈師:化系統與用戶雜訊成行動訊號
line_developers_tw
PRO
0
780
EventBridge Connection
_kensh
5
690
Claude Code の Sandbox 機能を Anthropic Sandbox Runtime(srt) で試そう!/lets-play-anthropic-sandbox-runtime
tomoki10
1
540
やさしいA2A入門
minorun365
PRO
11
1.7k
2026 TECHFRESH 畢業分享會 - AI-Native 重塑軟體工程與虛擬講師
line_developers_tw
PRO
0
780
チームで進めるAI駆動アジャイル×ウォーターフォール
kumaiu
0
150
Kubernetesにおける学習基盤とLLMOpsの概要
ry
1
250
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
It's Worth the Effort
3n
188
29k
Faster Mobile Websites
deanohume
310
31k
The Cult of Friendly URLs
andyhume
79
6.9k
Amusing Abliteration
ianozsvald
1
200
Prompt Engineering for Job Search
mfonobong
0
340
Testing 201, or: Great Expectations
jmmastey
46
8.2k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
440
Transcript
GCP使ってテスト自動化した い シュプレ @spre55
これまでの社会人生活のあらすじ ソーシャルゲームを約2年半、 PHPの自社製フレームワークを使って開発・運営してた 今年9月から、クラウド右翼系の会社に転職 絶賛クラウド武者修行中
テストしていますか? ぼくはしたことない! は言い過ぎかもしれないですけど、 少なくともテストコードというものを書いてこなかった。 ユニットテスト?なにそれ状態
なぜテストコードを書いたことがなかったのか ・そういう文化がなかったし、それで売上は出ていた ・必要性を感じる機会がなかった ・品質チェックは、外部委託とかでチェックして、駄目ならそういった会社に文句を言って ればよかった
勉強会とかの懇親会にて いろんなひとにテストどうやっているか聞きまくる 「テストやってます??」 「やってますねー」 「えーすごいーくぁwせdrftgyふじこlp」
何故か唐突に劣等感を感じ始める 俺テストコード書いたこと無い テストコード書いたことない俺は駄目人間なんだ
このままじゃいけない テストコード書かなきゃテストコード書かなきゃテストコード書かなきゃテストコード書かな きゃテストコード書かなきゃテストコード書かなきゃテストコード書かなきゃテストコード書 かなきゃテストコード書かなきゃテストコード書かなきゃテストコード書かなきゃテストコー ド書かなきゃテストコード書かなきゃテストコード書かなきゃテストコード書かなきゃテスト コード書かなきゃテストコード書かなきゃテストコード書かなきゃテストコード書かなきゃテ ストコード書かなきゃテストコード書かなきゃテストコード書かなきゃテストコード書かな きゃテストコード書かなきゃテストコード書かなきゃテストコード書かなきゃテストコード書 かなきゃテストコード書かなきゃテストコード書かなきゃテストコード書かなきゃテストコー ド書かなきゃ
そんなとき、前職を近いタイミングでやめた友人と個人 開発をはじめる
個人開発 ・とにかくスピードが命 ・遅いと飽きる ・そもそも仕事の合間にやるので、時間が確保しにくい ・そんな中テストやってる時間とれるのか??
個人開発 ・とにかくスピードが命 ・遅いと飽きる ・そもそも仕事の合間にやるので、時間が確保しにくい ・そんな中テストやってる時間とれるのか?? 自動化まで考えて、やっとテストってとっつきやすくなるのでは -> まずは自動化の仕組みを考えよう
その前に開発環境 GAE: Google App Engine (SE) 特徴 ・セキュリティとか考えなくていい(Googleの莫大なリソースの恩恵を受けれる) ・チュートリアルやって10分でHelloWorldを全世界に公開できるスピード感
じゃあ自動化どうすんの? Cloud Build 特徴 ・GCP環境でビルドを実行するサービス ・最低限のコストで安全に柔軟なビルドステップを実行できる
こっちじゃない
普段の開発 1.コードかく 2.テストコードかく (テスト駆動ならこっちが先) 3.テスト 4.githubとかで管理・レビュー 5.動作環境に反映・デプロイ
理想の開発 1.コードかく 2.テストコードかく (テスト駆動ならこっちが先) <- 自動化したい 3.テスト <- 自動化したい 4.githubとかで管理・レビュー
5.動作環境に反映・デプロイ <- 自動化したい
理想の開発 1.コードかく 2.テストコードかく (テスト駆動ならこっちが先) <- 自動化したい 3.テスト <- 自動化したい 4.githubとかで管理・レビュー
5.動作環境に反映・デプロイ <- 自動化したい このパイプライン的なものをまず作りたい
Cloud Build のワークフロー .yaml git push / tag テストとかデプロイとか 通知
Cloud Build のワークフロー .yaml git push / tag ①トリガーの設定 ②cloudbuild.yamlを
かく テストとかデプロイとか 通知
Cloud Build のワークフロー .yaml git push / tag ①トリガーの設定 ②cloudbuild.yamlを
かく テストとかデプロイとか 通知
1.トリガーの設定
None
None
None
None
None
Cloud Build のワークフロー .yaml git push / tag ①トリガーの設定 ②cloudbuild.yamlを
かく テストとかデプロイとか 通知
Cloud Build のワークフロー .yaml git push / tag ①トリガーの設定 ②cloudbuild.yamlを
かく テストとかデプロイとか 通知
2. cloudbuild.yamlをかく steps: - name: 'gcr.io/cloud-builders/gcloud' args: ['app', 'deploy', 'app.yaml']
cloudbuild.yaml GAEのデプロイ
履歴も 見れる
まとめ ・GAE は神 ・Cloud Build 面白い
まとめ ・GAE は神 ・Cloud Build 面白い ・(ちなみにまだテスト自動化できてない)