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
フリマアプリ「メルカリ」のCI / CDを支えるAutomation, Karakuriな文化
Search
Tadashi Nemoto
August 17, 2018
Technology
0
1.1k
フリマアプリ「メルカリ」のCI / CDを支えるAutomation, Karakuriな文化
Mobile CI/CD Meetup
https://mobile-ci-cd.connpass.com/event/95864/
Tadashi Nemoto
August 17, 2018
Tweet
Share
More Decks by Tadashi Nemoto
See All by Tadashi Nemoto
Best Practice CI/CD Pipeline for Deploying Container Apps to AWS
tadashi0713
0
170
Scalable and cloud-native mobile game CI/CD environment using Unity
tadashi0713
0
99
Migrating your mobile CI/CD environment to a scalable cloud solution using CircleCI
tadashi0713
0
200
Speed matters: Advanced CI/CD techniques to improve development velocity, quality & security
tadashi0713
0
260
AWS Graviton 環境への CI _ CD パイプラインを CircleCI で実現しよう (AWS Fargate 編)
tadashi0713
0
310
10x deployment frequency using GitLab Flow and GitHub Actions on AWS ECS
tadashi0713
0
530
デプロイ頻度を10倍にした、ブランチ戦略とGitHub Actions on AWS ECS
tadashi0713
8
4.1k
Creating parallelized Android UITest (Appium) environment using Azure, Docker and Android emulator
tadashi0713
0
3.9k
メルカリの開発スピードと品質を支える Selenium on Azure Kubernetes Service
tadashi0713
2
1.3k
Other Decks in Technology
See All in Technology
Two Blades, One Journey: Engineering While Managing
ohbarye
4
2.4k
クラウド関連のインシデントケースを収集して見えてきたもの
lhazy
9
1.9k
EDRの検知の仕組みと検知回避について
chayakonanaika
12
5.2k
Global Databaseで実現するマルチリージョン自動切替とBlue/Greenデプロイ
j2yano
0
160
急成長する企業で作った、エンジニアが輝ける制度/ 20250227 Rinto Ikenoue
shift_evolve
0
250
エンジニア主導の企画立案を可能にする組織とは?
recruitengineers
PRO
1
290
Pwned Labsのすゝめ
ken5scal
2
550
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
520
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
17
46k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
19k
Qiita Organizationを導入したら、アウトプッターが爆増して会社がちょっと有名になった件
minorun365
PRO
1
300
30→150人のエンジニア組織拡大に伴うアジャイル文化を醸成する役割と取り組みの変化
nagata03
0
310
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
380
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
The Cult of Friendly URLs
andyhume
78
6.2k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Producing Creativity
orderedlist
PRO
344
40k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
A better future with KSS
kneath
238
17k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Unsuck your backbone
ammeep
669
57k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
Transcript
フリマアプリ「メルカリ」の CI / CDを支える Automation, Karakuriな文化 全てtadashiが自動化する(仮題) Nemoto Tadashi Mobile
CI/CD Meetup
自己紹介 • 根本 征(Nemoto Tadashi) • Automation & QA (AQA)
Group • テスト自動化 • Selenium, Appium, XCUITest • モバイルCI / CD改善 • 社内の生産性を上げるための自動化・サポート • https://seleck.cc/1230 • 自称 Zapierエバンジェリスト
メルカリにはなぜ モバイルCI / CD・テスト自動化が 必要なのか?
エンジニアの行動指針 Automation, Karakuri
Automation (自動化) 本来すべきこと(コード・設計) に集中するため 機械になるべくやらせて、効率化させる 2度以上行なった作業は自動化の対象
Karakuri (仕組み化) 問題が起きた時、気合いではなく、 人的エラーが起きない仕組みで解決する
モバイル CI / CD・テスト自動化によって プロダクト開発に関わる人 (エンジニア・QA)が 本来すべきことに集中して幸せになる
開発フェーズ
AndroidのCI時間を10分短縮し、 開発を爆速にするためのKarakuriを作った話 https://tech.mercari.com/entry/2018/07/04/110000 Android CI CircleCI 2.0
Android CI 忘れがちなこと、人が指摘しなくてもいいことは 機械に任せる Danger Codecov
QAフェーズ E2Eテスト自動化
Android apkビルド Google Cloud Storage
Android テスト実行 Appium
マスター タイトルの書式設定 • マスター テキストの書式設定 Android(RSpec HTML Reporter)
マスター タイトルの書式設定 • マスター テキストの書式設定 Android(RSpec HTML Reporter)
マスター タイトルの書式設定 • マスター テキストの書式設定 Android(RSpec HTML Reporter)
iOS テスト実行 XCUITest
iOS(XCTestHTMLReport) メルカリiOSのUIテスト自動化をま るっとご紹介します! https://tech.mercari.com/entr y/2018/08/07/123000
フィードバックもより早く
E2E(特にモバイル)は メンテナンスコストが高い 不安定
でも • エンジニアとQAでテストしたい・確認したいことは違う • QAがメンテナンス・自動化できる状態になれば良いのでは • 現在レポートをチェック・フィードバックができている • 簡単にシナリオを実装・メンテナンスできる仕組みが必要 •
うまくいかないか模索・検証中
CI / CDサービス以外でも 自動化できる部分はある
Zapierを使ったAPI連携
Zapierとは • 複数のWebアプリケーション(SaaS)を連携させてワークフ ローを作り、自動化させることができるサービス • IFTTTと似たサービス • GUI上で簡単にワークフローを作成できる • Bitriseに似ている
• 1000以上のWebアプリケーションと連携可能
Zapier × JIRAで必要なIssueを自動生成する 社内の面倒な手作業はZapierにやらせよう #2 〜Webhookを使って、自動化の幅を広げる〜 https://tech.mercari.com/entry/2018/06/12/110000
Zapier × JIRAで必要なIssueを自動生成する
Zapier × JIRAで必要なIssueを自動生成する
Zapier × JIRAで必要なIssueを自動生成する
プロダクト開発で使う様々なツールと Zapierは連携することができる • JIRA • GitHub • Slack • ChatWork
• Trello • Readmine • Asana • GitLab • Dropbox • GSuite
「ノンプログラマーでも自動化はできる」 Zapier Automation Meetup Tokyo #0 を開催しました https://tech.mercari.com/entry/2018/07/13/150000
1回でパーフェクトなCI / CDは作れない
Automation, Karakuriしていく文化
まとめ • 本来すべきことに集中するため、自動化・仕組み化 • CIの高速化・レビューの一部分を機械に任せる • E2Eテストは実行頻度を増やす・レポートを見やすくしてフィードバッ クを早くしている • CI
/ CDサービス以外でも自動化できる部分はある(Zapier) • 1回でパーフェクトな CI / CDは作れないため、自発的・継続的に自 動化・仕組み化していく文化を作っていく