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
AppiumからXCUITestに変え、そのためにSwiftを学び始めた話
Search
Tadashi Nemoto
May 22, 2017
Technology
22k
2
Share
AppiumからXCUITestに変え、そのためにSwiftを学び始めた話
https://testnight.connpass.com/event/54316/
Tadashi Nemoto
May 22, 2017
More Decks by Tadashi Nemoto
See All by Tadashi Nemoto
コンテナイメージの脆弱性を削減する新しいアプローチ:Hardened Container Images
tadashi0713
0
52
Best Practice CI/CD Pipeline for Deploying Container Apps to AWS
tadashi0713
0
250
Scalable and cloud-native mobile game CI/CD environment using Unity
tadashi0713
0
160
Migrating your mobile CI/CD environment to a scalable cloud solution using CircleCI
tadashi0713
0
260
Speed matters: Advanced CI/CD techniques to improve development velocity, quality & security
tadashi0713
0
320
AWS Graviton 環境への CI _ CD パイプラインを CircleCI で実現しよう (AWS Fargate 編)
tadashi0713
0
390
10x deployment frequency using GitLab Flow and GitHub Actions on AWS ECS
tadashi0713
0
630
デプロイ頻度を10倍にした、ブランチ戦略とGitHub Actions on AWS ECS
tadashi0713
8
4.5k
Creating parallelized Android UITest (Appium) environment using Azure, Docker and Android emulator
tadashi0713
0
4.2k
Other Decks in Technology
See All in Technology
申請待ちゼロへ!AWS × Entra IDで実現した「権限付与」のセルフサービス化
mhrtech
2
320
新メンバーのために、シニアエンジニアが環境を作る時代
puku0x
0
1k
職能の壁を取り払った先で見えた壁 -AI時代のクロスファンクショナル組織-
shimotaroo
1
110
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
390
最新の脅威動向から考える、コンテナサプライチェーンのリスクと対策
kyohmizu
0
250
ハーネスエンジニアリングの概要と設計思想
sergicalsix
4
830
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
16k
AI時代における技術的負債への取り組み
codenote
0
320
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
240
Digitization部 紹介資料
sansan33
PRO
1
7.3k
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」ご紹介資料
laysakura
0
2.3k
[OpsJAWS 40]リリースしたら終わり、じゃなかった。セキュリティ空白期間をAWS Security Agentで埋める
sh_fk2
3
160
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
528
40k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Believing is Seeing
oripsolob
1
110
Amusing Abliteration
ianozsvald
1
150
How to train your dragon (web standard)
notwaldorf
97
6.6k
Designing Powerful Visuals for Engaging Learning
tmiket
1
340
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
230
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Designing Experiences People Love
moore
143
24k
Building the Perfect Custom Keyboard
takai
2
730
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Code Review Best Practice
trishagee
74
20k
Transcript
2017/05/22 iOS Test Night #4 Tadashi Nemoto AppiumからXCUITestに変え、 そ ためにSwiftを学び始めた話
自己紹介 • 根本 征 (github: tadashi0713) • Software Engineer in
Test @mercari • 4月からQA・SETチームとして活動 • UI・E2Eテスト自動化がメイン • テスト管理ツールを作りたいと思って色々チャレンジしてい る
#2で発表した内容 https://speakerdeck.com/tadashi0713/ appium-xcuitest-drivertocihuan-jing
最近までやっていたこと • ターゲットアプリ リリース前に基本機能が正しく動作してい るかリグレッションテストを手動で行っていた • 繰り返し作業が多い・リリースするタイミングが増えたため一 部自動化を検討 • iOS・Androidで50%自動化目標
• Appiumを使って挑戦してみた
結局どうなった か
Appiumをやめて(iOS) XCUITestに変えた
理由そ 1: Accessibility付与 • ターゲットアプリに Accessibilityが振られている部分 少なかった • 付与しながらテストを書いていく事が求められた •
しかしAppium 場合、iOSレポジトリでAccessibilityを振 りながら、また別 レポジトリでテストを書く必要があった • これが結構大変だった
理由そ 2: 動作速度・安定性 • 当時xcuitest-driver 安定していない部分もあった • xcuitest-driver 場合Xpathを使うと動作が遅くなる •
動作速度が遅いとそ 分全体 実装速度も遅くなってい くなと書いていて感じた
単純に思ったこと Appiumも実際に XCUITestを動かしている XCUITestでいい で
試しに書いてみて とてもよかった
Accessibility付与問題 ? • 1つ レポジトリでAccessibility付与・UIテスト実装ができ る • レコーディング機能で付けたAccessibilityがきちんと動作 できるか確認できる
動作速度・安定性問題 ? • 実行速度 Appiumと比べると早かった印象 • もちろんUIテストな で時間 とられやすい •
システムアラートやWebviewも処理できた • waitもPage Object Patternを使ってうまくでき、安定 して実行することができた
ほぼ未経験だが Swift 挑戦しながら書いてみようȋ
約1ヶ月半かけて XCUITestでEnd to Endテストを実装
Jenkins & 社内 mac で実行環境を用意 Chatから実行できるように
QAエンジニアと協力して リリース前 リグレッションテスト 50%自動化に成功 仕様・UI 変更にも追いついていく ことができた
しかしそ アプリ 諸事情により開発中断 もうほぼアップデートされること なくなった
失ったコード5029行 無価値になったかと思った
実際そんなこと なかった 残ったも 多かった
iOSをテストする上で 必要な知識が学べた
• 知らないといけないこと • Xcode、関連コマンド • Unit Test どうなっている か(XCTest) •
fastlane • 知っておくと便利なこと • 並列実行(Bluepill、pxctest) • snapshot
• ノウハウもたまった • XCUITestで Page Object Pattern • テストデータ生成 •
ど くらい工数をかけれ ど くらい自動化できるか
違うチームでテスト自動化 導入が 検討されることがでてきた
UIテスト自動化に興味 ある QAエンジニアが出てきた
定期的に勉強会を実施
これもある程度 レベルまで UIテストを実装・導入したからこそ 出た良い影響かなと僕 思いました