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
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
シュプレ
December 08, 2018
Technology
0
250
GCP使ってテスト自動化したい.pdf
シュプレ
December 08, 2018
Tweet
Share
More Decks by シュプレ
See All by シュプレ
エンジニア(?)にオススメの本
spre55
0
170
PHPエンジニアが転職してGoを書き始めたら楽しくなってきた話.pdf
spre55
2
1.3k
はじめてのCode4兄弟
spre55
0
320
2016HACKDAYS_52_HelloAgain
spre55
0
83
LANケーブル圧着入門
spre55
0
110
できるSEO! ver 2.1
spre55
0
65
Web班番外編 jQuery
spre55
0
140
pre講義 jQuery
spre55
0
110
Other Decks in Technology
See All in Technology
Embeddings : Symfony AI en pratique
lyrixx
0
360
BFCacheを活用して無限スクロールのUX を改善した話
apple_yagi
0
130
「お金で解決」が全てではない!大規模WebアプリのCI高速化 #phperkaigi
stefafafan
5
2.4k
Phase09_自動化_仕組み化
overflowinc
0
1.9k
ThetaOS - A Mythical Machine comes Alive
aslander
0
200
Phase08_クイックウィン実装
overflowinc
0
2k
Amazon Qはアマコネで頑張っています〜 Amazon Q in Connectについて〜
yama3133
1
150
ハーネスエンジニアリング×AI適応開発
aictokamiya
1
350
LLMに何を任せ、何を任せないか
cap120
10
5.9k
PostgreSQL 18のNOT ENFORCEDな制約とDEFERRABLEの関係
yahonda
0
140
俺の/私の最強アーキテクチャ決定戦開催 ― チームで新しいアーキテクチャに適合していくために / 20260322 Naoki Takahashi
shift_evolve
PRO
1
460
GitHub Advanced Security × Defender for Cloudで開発とSecOpsのサイロを超える: コードとクラウドをつなぐ、開発プラットフォームのセキュリティ
yuriemori
1
100
Featured
See All Featured
Designing for Timeless Needs
cassininazir
0
170
The Cost Of JavaScript in 2023
addyosmani
55
9.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
How GitHub (no longer) Works
holman
316
150k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Side Projects
sachag
455
43k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
91
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.8k
Making the Leap to Tech Lead
cromwellryan
135
9.8k
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 面白い ・(ちなみにまだテスト自動化できてない)