狠狠撸

狠狠撸Share a Scribd company logo
顿别狈础における厂奥贰罢の役割
2017/10/13(Fri)
iOSDC 2017 Reject Conference days1
平田敏之(@tarappo)
自己紹介
平田 敏之@DeNA
SWET (Software Engineer in Test)
私がやっていること(一部)
? クライアントアプリ周りのテスト戦略、自動テストの開発
? CI/CD環境整備
? テスト基盤環境の開発(マスティフ、ダルメシアン etc)
? iOS / Android Test Night 主宰
? 12/5 iOS Test Night #6 - 1周年 -
? 12/15 Android Test Night #2
今日の流れ
? SWETとは?
? グループ構成
? 事業サポートチームの話
? やっていることについて
? テスト基盤チームの話
? やっていることについて
? おわりに
今までのSWETの話(一部)
? DeNA TechConf 2016
? DeNAが取り組む Software Engineer in Test
? http://www.slideshare.net/masaki/dena-software-engineer-in-test
? DeNA TechConf 2017
? DeNAの取り組むテストエンジニアリング
? https://speakerdeck.com/okitan/denafalsequ-rizu-mutesutoensiniarinku
SWETとは?
Software Engineer in Test
? ミッション?ステートメント
? ソフトウェアテストを起点とした
? プロダクト?サービスの品質向上
? エンジニアの開発生産性向上
? 価値のあるものを素早く提供できるようにする
Make Testing Fun, Smart, and Delighting End-Users
テストをもっと楽しく賢くそしてユーザのデライトにつながるようにしていきたい
Vision
SWET
グループ構成
A事業サポート
テスト基盤
B事業サポート
A事業 B事業 C事業
C事業サポート
D事業
事業サポートチーム(複数)とテスト基盤チームから構成される
各チームの役割
? 事業サポートチーム(深さ担当)
? 事業チームの開発生産性?品質の向上
? 事業チームのテスト成熟度の向上
? 事業チームの品質的なコミットメントの引き出し
? テスト技術の追求と蓄積
? テスト基盤チーム(広さ担当)
? 共通で利用できるサービスの開発
? 一歩(以上)先のテストエンジニアリング
? R&D的な要素が強い
事業サポートチーム
対象:Sakasho
Sakashoとは?
? ゲームアプリ向けの内製BaaS
? ゲーム開発者にSDK(Unity / C++)と管理ツールを提供
? 多種多用な機能(一部)
? マスターデータ配信
? アセット配信
? プレイヤー管理
? 課金
? Push通知
DeNA TechConf 2017
? DeNAのゲームを支えるプラットフォーム Sakasho
? /dena_tech/dena-sakasho-denatechcon-72603307
事業サポートチーム
SWETのやったこと?やっていること
? 対象サービスのドメイン知識の獲得(必須)
? SDK(C++/Unity)を利用したテストアプリの開発、改良
? 初期:知識の獲得や初期ユーザとして1つ1つ実装
? 今:開発コストをあまりかける必要がないように改良
? 開発効率化
? CI(Jenkins)環境の改善
? Ansibleや独自pluginなども導入
? Dangerの導入
? リリース周りの最適化
? リリースプロセスの改善
? CI環境のパイプラインによるサポート
? E2Eの自動テストの導入(C++SDK / UnitySDK)
委譲できるタイミングになれば開発側に委譲し運用を任せる
事業サポートチーム
自動テスト(C++SDK/UnitySDK)の進め方
? [SWET] どのように攻めていくかを決める
? どの機能か、正常系か、準正常系か、どのバージョンか
? [SWET] テストコードの実装周りの初期サポート
? 自動テストのコード、Helperやsetupスクリプトなど用意
? [SWET] CI環境(Jenkins)の用意
? 自動テストを実行するjobを用意
? 実行環境:iOS:シミュレーター、Android:OpenSTF
? nightlyで自動テストを定期実行
? 自動テストの安定性の確認など
? [開発側] 自動テストの実装
? [SWET] 初期のレビューはSWETが担当
事業部が自ら品質にコミットメント出来るように整えていく
テスト基盤チーム
共通で利用できる基盤開発を主軸とするチーム
※事業サポートが無い事業チームにおいても基盤としてサポートすることができる※
? やっていること(一部)
? ゲーム自動化
? 犬シリーズの開発
? CIサポート
? 導入支援
? Jenkinsのplugin開発、運用ツールの開発
? CircleCI Enterpriseサポート
テスト基盤チーム
犬シリーズ
SWETが開発しているサービスは犬の名前が命名されています
? マスティフ
? バージョンアップ対応軽減サービス
? ダルメシアン
? コードレビュープロセスサポート
? ポメラニアン
? テスト並列化サポート
? ラブラドール?レトリーバー
? 機械学習を使ったUIテストの簡易化
テスト基盤チーム
犬シリーズ:マスティフ(1/3)
? バージョンアップ対応で苦労したことありませんか?
? Xcode、ライブラリなど
? こんな経験はありませんか?
? 新バージョンへの移行時のコスト見積もりが難しいので先延ばし
? バージョンアップしてみたらビルドすら通らなかった
? バージョンを固定化していたのに動かなくなった
? fastlane/deliverとか使っているとあったり(Apple側の改修で..)
? いつバージョンがあがるか(あがったか)は分からない
? 気づいたときにバージョンアップをしてみる
テスト基盤チーム
犬シリーズ:マスティフ(2/3)
テスト基盤チーム
犬シリーズ:マスティフ(3/3)
Slack Web
バージョン通知とテスト結果の通知
各バージョンの情報
? 利用出来るかどうか
? バージョンアップ时に対応がいるかどうか
テスト基盤チーム
犬シリーズ:参考資料
各カンファレンス、勉強会などで紹介していますので詳細はそちらの資料を参考に。
? マスティフ
? @iOS Test Night
? /tarappo/for-xcode-beta
? /tarappo/ss-71179542
? ダルメシアン
? @Android Test Night、iOS Test Night
? /tarappo/danger-x-android
? /ShunsukeMaeda/ios-80347918
? ポメラニアン
? @iOSDC2017、iOS Test Night
? https://speakerdeck.com/yusukehosonuma/uitestshort
? /tarappo/ui-76205186
? ラブラドール?レトリーバー
? @SeleniumConf Berlin
? /ToshiyaKomoda/introduce-machine-learning-into-ui-tests
おわりに
? SWETとは
? 「事業サポート x テスト基盤」の「深さ x 広さ」の体制
? SWETの技術?スキルを支え、展開する体制
? 一歩先のテストエンジニアリングへの取り組み
? 技術的チャレンジの機会が多いグループ
? 課題
? SWET/SETの認知度
ブランディング
SWET/SETはまだまだ知名度が低いためブランディングが重要
? Test Engineers Meetup
? https://test-engineers-meetup.connpass.com/
? iOS Test Night / Android Test Night
? https://testnight.connpass.com/
? testnightのslack
? https://testnight-invitation.herokuapp.com/
? SWETのブログ
? http://swet.dena.com/
Ad

Recommended

颈翱厂アフ?リの自动テストをはし?めよう
颈翱厂アフ?リの自动テストをはし?めよう
Toshiyuki Hirata
?
コート?レヒ?ューをより良くする Danger x Android
コート?レヒ?ューをより良くする Danger x Android
Toshiyuki Hirata
?
2017年の颈翱厂アフ?リ开発における颁滨事情
2017年の颈翱厂アフ?リ开発における颁滨事情
Toshiyuki Hirata
?
ハ?ーシ?ョンアッフ?対応を軽减するサーヒ?ス:マスティフ
ハ?ーシ?ョンアッフ?対応を軽减するサーヒ?ス:マスティフ
Toshiyuki Hirata
?
fastlane snapshotの並列実行についてまとめてみた
fastlane snapshotの並列実行についてまとめてみた
Toshiyuki Hirata
?
DroidKaigi_devicefarm
DroidKaigi_devicefarm
Shunsuke Maeda
?
叠濒耻别辫颈濒濒を使った颈翱厂自动テストの并列化
叠濒耻别辫颈濒濒を使った颈翱厂自动テストの并列化
Toshiyuki Hirata
?
マスティフ (for Xcode beta) - バージョンアップ対応を軽減するためのサービス
マスティフ (for Xcode beta) - バージョンアップ対応を軽減するためのサービス
Toshiyuki Hirata
?
础苍诲谤辞颈诲のテストを効率的にするために考えたこと
础苍诲谤辞颈诲のテストを効率的にするために考えたこと
Ataru Osaka
?
颈翱厂におけるコート?レヒ?ューを一歩先へ进める
颈翱厂におけるコート?レヒ?ューを一歩先へ进める
Shunsuke Maeda
?
iOSアフ?リ開発のCI環境 - Jenkins編 -
iOSアフ?リ開発のCI環境 - Jenkins編 -
Toshiyuki Hirata
?
fastlane x iOSアプリのCI
fastlane x iOSアプリのCI
Toshiyuki Hirata
?
ハ?ーシ?ョンアッフ?の対応を軽减するためのサーヒ?スの构筑
ハ?ーシ?ョンアッフ?の対応を軽减するためのサーヒ?スの构筑
Toshiyuki Hirata
?
颈翱厂アフ?リにおけるリリースフローと颁滨环境
颈翱厂アフ?リにおけるリリースフローと颁滨环境
Toshiyuki Hirata
?
Dangerて?pull requestレヒ?ューの指摘事項を減らす
Dangerて?pull requestレヒ?ューの指摘事項を減らす
Shunsuke Maeda
?
Xcodeの管理を楽に - Jenkins編 -
Xcodeの管理を楽に - Jenkins編 -
Toshiyuki Hirata
?
Xcode10での テスト周りの進化をふりかえる
Xcode10での テスト周りの進化をふりかえる
Toshiyuki Hirata
?
鲍滨テストの実行时间の短缩の方法
鲍滨テストの実行时间の短缩の方法
Toshiyuki Hirata
?
Android e2e testing at mercari
Android e2e testing at mercari
Vishal Banthia
?
スマホアプリディレクターが考えていること
スマホアプリディレクターが考えていること
Kazuaki KURIU
?
颈翱厂て?利用て?きるテ?ハ?イスファームのメリット?テ?メリットの绍介
颈翱厂て?利用て?きるテ?ハ?イスファームのメリット?テ?メリットの绍介
Shunsuke Maeda
?
Pull request時の画面差分取得の自動化
Pull request時の画面差分取得の自動化
Shunsuke Maeda
?
础苍诲谤辞颈诲アフ?リ开発のテスト环境
础苍诲谤辞颈诲アフ?リ开発のテスト环境
Toshiyuki Hirata
?
20151021 cookpad talk_test_engineer
20151021 cookpad talk_test_engineer
Kazuaki Matsuo
?
iOSアフ?リ開発のテスト環境 - テストをはじめる最初の一歩 -
iOSアフ?リ開発のテスト環境 - テストをはじめる最初の一歩 -
Toshiyuki Hirata
?
5minQues - SWET近況報告
5minQues - SWET近況報告
Masaki Nakagawa
?
颁贰顿贰颁2015冲スマホゲーム开発を支えろ!?汗と涙の蚕础エンジニアリング?
颁贰顿贰颁2015冲スマホゲーム开発を支えろ!?汗と涙の蚕础エンジニアリング?
gree_tech
?
JaSST'16 Tokyo モバイルセッション
JaSST'16 Tokyo モバイルセッション
mirer
?
颈翱厂におけるハ?フォーマンス计测
颈翱厂におけるハ?フォーマンス计测
Toshiyuki Hirata
?
颈翱厂におけるハ?フォーマンス计测
颈翱厂におけるハ?フォーマンス计测
Toshiyuki Hirata
?

More Related Content

What's hot (20)

础苍诲谤辞颈诲のテストを効率的にするために考えたこと
础苍诲谤辞颈诲のテストを効率的にするために考えたこと
Ataru Osaka
?
颈翱厂におけるコート?レヒ?ューを一歩先へ进める
颈翱厂におけるコート?レヒ?ューを一歩先へ进める
Shunsuke Maeda
?
iOSアフ?リ開発のCI環境 - Jenkins編 -
iOSアフ?リ開発のCI環境 - Jenkins編 -
Toshiyuki Hirata
?
fastlane x iOSアプリのCI
fastlane x iOSアプリのCI
Toshiyuki Hirata
?
ハ?ーシ?ョンアッフ?の対応を軽减するためのサーヒ?スの构筑
ハ?ーシ?ョンアッフ?の対応を軽减するためのサーヒ?スの构筑
Toshiyuki Hirata
?
颈翱厂アフ?リにおけるリリースフローと颁滨环境
颈翱厂アフ?リにおけるリリースフローと颁滨环境
Toshiyuki Hirata
?
Dangerて?pull requestレヒ?ューの指摘事項を減らす
Dangerて?pull requestレヒ?ューの指摘事項を減らす
Shunsuke Maeda
?
Xcodeの管理を楽に - Jenkins編 -
Xcodeの管理を楽に - Jenkins編 -
Toshiyuki Hirata
?
Xcode10での テスト周りの進化をふりかえる
Xcode10での テスト周りの進化をふりかえる
Toshiyuki Hirata
?
鲍滨テストの実行时间の短缩の方法
鲍滨テストの実行时间の短缩の方法
Toshiyuki Hirata
?
Android e2e testing at mercari
Android e2e testing at mercari
Vishal Banthia
?
スマホアプリディレクターが考えていること
スマホアプリディレクターが考えていること
Kazuaki KURIU
?
颈翱厂て?利用て?きるテ?ハ?イスファームのメリット?テ?メリットの绍介
颈翱厂て?利用て?きるテ?ハ?イスファームのメリット?テ?メリットの绍介
Shunsuke Maeda
?
Pull request時の画面差分取得の自動化
Pull request時の画面差分取得の自動化
Shunsuke Maeda
?
础苍诲谤辞颈诲アフ?リ开発のテスト环境
础苍诲谤辞颈诲アフ?リ开発のテスト环境
Toshiyuki Hirata
?
20151021 cookpad talk_test_engineer
20151021 cookpad talk_test_engineer
Kazuaki Matsuo
?
iOSアフ?リ開発のテスト環境 - テストをはじめる最初の一歩 -
iOSアフ?リ開発のテスト環境 - テストをはじめる最初の一歩 -
Toshiyuki Hirata
?
5minQues - SWET近況報告
5minQues - SWET近況報告
Masaki Nakagawa
?
颁贰顿贰颁2015冲スマホゲーム开発を支えろ!?汗と涙の蚕础エンジニアリング?
颁贰顿贰颁2015冲スマホゲーム开発を支えろ!?汗と涙の蚕础エンジニアリング?
gree_tech
?
JaSST'16 Tokyo モバイルセッション
JaSST'16 Tokyo モバイルセッション
mirer
?
础苍诲谤辞颈诲のテストを効率的にするために考えたこと
础苍诲谤辞颈诲のテストを効率的にするために考えたこと
Ataru Osaka
?
颈翱厂におけるコート?レヒ?ューを一歩先へ进める
颈翱厂におけるコート?レヒ?ューを一歩先へ进める
Shunsuke Maeda
?
iOSアフ?リ開発のCI環境 - Jenkins編 -
iOSアフ?リ開発のCI環境 - Jenkins編 -
Toshiyuki Hirata
?
ハ?ーシ?ョンアッフ?の対応を軽减するためのサーヒ?スの构筑
ハ?ーシ?ョンアッフ?の対応を軽减するためのサーヒ?スの构筑
Toshiyuki Hirata
?
颈翱厂アフ?リにおけるリリースフローと颁滨环境
颈翱厂アフ?リにおけるリリースフローと颁滨环境
Toshiyuki Hirata
?
Dangerて?pull requestレヒ?ューの指摘事項を減らす
Dangerて?pull requestレヒ?ューの指摘事項を減らす
Shunsuke Maeda
?
Xcodeの管理を楽に - Jenkins編 -
Xcodeの管理を楽に - Jenkins編 -
Toshiyuki Hirata
?
Xcode10での テスト周りの進化をふりかえる
Xcode10での テスト周りの進化をふりかえる
Toshiyuki Hirata
?
鲍滨テストの実行时间の短缩の方法
鲍滨テストの実行时间の短缩の方法
Toshiyuki Hirata
?
Android e2e testing at mercari
Android e2e testing at mercari
Vishal Banthia
?
スマホアプリディレクターが考えていること
スマホアプリディレクターが考えていること
Kazuaki KURIU
?
颈翱厂て?利用て?きるテ?ハ?イスファームのメリット?テ?メリットの绍介
颈翱厂て?利用て?きるテ?ハ?イスファームのメリット?テ?メリットの绍介
Shunsuke Maeda
?
Pull request時の画面差分取得の自動化
Pull request時の画面差分取得の自動化
Shunsuke Maeda
?
础苍诲谤辞颈诲アフ?リ开発のテスト环境
础苍诲谤辞颈诲アフ?リ开発のテスト环境
Toshiyuki Hirata
?
20151021 cookpad talk_test_engineer
20151021 cookpad talk_test_engineer
Kazuaki Matsuo
?
iOSアフ?リ開発のテスト環境 - テストをはじめる最初の一歩 -
iOSアフ?リ開発のテスト環境 - テストをはじめる最初の一歩 -
Toshiyuki Hirata
?
5minQues - SWET近況報告
5minQues - SWET近況報告
Masaki Nakagawa
?
颁贰顿贰颁2015冲スマホゲーム开発を支えろ!?汗と涙の蚕础エンジニアリング?
颁贰顿贰颁2015冲スマホゲーム开発を支えろ!?汗と涙の蚕础エンジニアリング?
gree_tech
?
JaSST'16 Tokyo モバイルセッション
JaSST'16 Tokyo モバイルセッション
mirer
?

More from Toshiyuki Hirata (8)

颈翱厂におけるハ?フォーマンス计测
颈翱厂におけるハ?フォーマンス计测
Toshiyuki Hirata
?
颈翱厂におけるハ?フォーマンス计测
颈翱厂におけるハ?フォーマンス计测
Toshiyuki Hirata
?
颈翱厂における自动テストの并列化
颈翱厂における自动テストの并列化
Toshiyuki Hirata
?
鲍滨テスト(贰蝉辫谤别蝉蝉辞)の高速化をさらにすすめる
鲍滨テスト(贰蝉辫谤别蝉蝉辞)の高速化をさらにすすめる
Toshiyuki Hirata
?
鲍滨テストの実行时间を短缩させる方法
鲍滨テストの実行时间を短缩させる方法
Toshiyuki Hirata
?
我か?家の尝滨狈贰を中心とした情报共有
我か?家の尝滨狈贰を中心とした情报共有
Toshiyuki Hirata
?
レヒ?ューのコストを削减するための施策
レヒ?ューのコストを削减するための施策
Toshiyuki Hirata
?
厂罢贵と础辫辫颈耻尘をもちいた础苍诲谤辞颈诲アフ?リの自动テスト
厂罢贵と础辫辫颈耻尘をもちいた础苍诲谤辞颈诲アフ?リの自动テスト
Toshiyuki Hirata
?
颈翱厂におけるハ?フォーマンス计测
颈翱厂におけるハ?フォーマンス计测
Toshiyuki Hirata
?
颈翱厂におけるハ?フォーマンス计测
颈翱厂におけるハ?フォーマンス计测
Toshiyuki Hirata
?
颈翱厂における自动テストの并列化
颈翱厂における自动テストの并列化
Toshiyuki Hirata
?
鲍滨テスト(贰蝉辫谤别蝉蝉辞)の高速化をさらにすすめる
鲍滨テスト(贰蝉辫谤别蝉蝉辞)の高速化をさらにすすめる
Toshiyuki Hirata
?
鲍滨テストの実行时间を短缩させる方法
鲍滨テストの実行时间を短缩させる方法
Toshiyuki Hirata
?
我か?家の尝滨狈贰を中心とした情报共有
我か?家の尝滨狈贰を中心とした情报共有
Toshiyuki Hirata
?
レヒ?ューのコストを削减するための施策
レヒ?ューのコストを削减するための施策
Toshiyuki Hirata
?
厂罢贵と础辫辫颈耻尘をもちいた础苍诲谤辞颈诲アフ?リの自动テスト
厂罢贵と础辫辫颈耻尘をもちいた础苍诲谤辞颈诲アフ?リの自动テスト
Toshiyuki Hirata
?
Ad

顿别狈础における厂奥贰罢の役割