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
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
1
350
Best Practice CI/CD Pipeline for Deploying Container Apps to AWS
tadashi0713
0
300
Scalable and cloud-native mobile game CI/CD environment using Unity
tadashi0713
0
180
Migrating your mobile CI/CD environment to a scalable cloud solution using CircleCI
tadashi0713
0
290
Speed matters: Advanced CI/CD techniques to improve development velocity, quality & security
tadashi0713
0
350
AWS Graviton 環境への CI _ CD パイプラインを CircleCI で実現しよう (AWS Fargate 編)
tadashi0713
0
410
10x deployment frequency using GitLab Flow and GitHub Actions on AWS ECS
tadashi0713
0
650
デプロイ頻度を10倍にした、ブランチ戦略とGitHub Actions on AWS ECS
tadashi0713
8
4.6k
Creating parallelized Android UITest (Appium) environment using Azure, Docker and Android emulator
tadashi0713
0
4.3k
Other Decks in Technology
See All in Technology
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
53k
Digitization部 紹介資料
sansan33
PRO
2
7.7k
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.1k
メルカリのグローバルアプリで挑んだ AlloyDB 運用と課題解決の実践記
hatappi
0
230
FORENSIA: ローカルLLMフォレンジックハーネス
sumeshi
2
250
【CEDEC2026】コードレビュー支援ツール開発から学ぶ:LLMを用いた業務システムの実践的な運用設計と誤出力対策
cygames
PRO
0
590
第3回しろおびセキュリティスポンサーセッション
log0417
0
150
社内の7割が使うデータ基盤を、 データチーム2人で回すためにやったこと
koh_yoshi
4
820
Pavlokで始める電撃駆動開発
sgrsn
0
170
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.9k
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
2
670
Agent 時代の Kaggle 展望 / kaggle-in-the-agentic-era
upura
1
620
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
698
190k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Building the Perfect Custom Keyboard
takai
2
830
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
490
Making Projects Easy
brettharned
120
6.7k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.6k
Music & Morning Musume
bryan
47
7.3k
First, design no harm
axbom
PRO
2
1.2k
Evolving SEO for Evolving Search Engines
ryanjones
0
250
Automating Front-end Workflow
addyosmani
1370
210k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
440
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テストを実装・導入したからこそ 出た良い影響かなと僕 思いました