Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Appium with PHPUnit - short version -
Search
Norio Suzuki
July 15, 2013
Technology
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Appium with PHPUnit - short version -
Appium is Mobile App Test Tool.
How to use Appium by PHPUnit.
Norio Suzuki
July 15, 2013
More Decks by Norio Suzuki
See All by Norio Suzuki
リーダブル プルリクエスト 分割プルリクエスト編 / Readable Pull Request
suzuki
3
2.2k
ふんわり使うPlantUML
suzuki
0
1.5k
Symfony Serializer Deep Dive
suzuki
0
2.4k
How to walk in the Crowi
suzuki
6
16k
Swift Mailer Update
suzuki
2
2.6k
Guzzle Promiseを使った 非同期処理によるAPIコールの高速化
suzuki
15
17k
PHP BLT #4
suzuki
1
5.2k
Learning Swift2 with PHP7
suzuki
2
4.3k
ポモドーロ・テクニック入門の入門
suzuki
0
770
Other Decks in Technology
See All in Technology
今こそ知りたいAmplifyGen2
mkdev10
2
150
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
310
Meet AgentCore Identity Consent Portal
hironobuiga
3
190
購入ドメインでの課題と取り組み
ykagano
0
150
Datadog の学び方 - あるいは、オブザーバビリティを学ぶとは何か
mananyuki
1
490
AI Made Us Faster at Solving the Wrong Problems
marceloancelmo
0
180
おそらく日本で唯一のDevRelインターン生として
husengs7
0
170
転んだ話が背中を預ける理由になる / A_story_about_falling_down_gives_you_a_reason_to_watch_each_other_s_backs.pdf
pauli
3
310
並行性の問題を防げ!実践トランザクション入門
occhi
0
280
AI時代のAPI開発を加速する品質ガードレール / API Quality Guardrails in the AI Era
yokawasa
0
160
生成AIで高い生産性を求められて、 悩み、乗り越えた話
mot_techtalk
2
130
Incremental HTTP
kazuho
5
2.1k
Featured
See All Featured
Building AI with AI
inesmontani
PRO
1
1.3k
Utilizing Notion as your number one productivity tool
mfonobong
4
610
YesSQL, Process and Tooling at Scale
rocio
174
15k
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
250
How to Think Like a Performance Engineer
csswizardry
28
2.9k
My Coaching Mixtape
mlcsv
0
340
Chasing Engaging Ingredients in Design
codingconduct
0
340
Accessibility Awareness
sabderemane
1
240
RailsConf 2023
tenderlove
30
1.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
520
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
480
Transcript
"QQJVNXJUI1)16OJU TIPSUWFSTJPO !TV[VLJ 1)1.BUTVSJ4BQQPSP B 137݄15݄༵
B "CPVUNF w5XJUUFS!TV[VLJ w(JU)VC 7JNFP 6TUSFBNTV[VLJ w8FC/JLLJIUUQTV[VLJUEJBSZOFU IUUQHJIZPKQMJGFTUZMFTFSJBMFWFOUTUSFBNJOH 137݄15݄༵
137݄15݄༵
B .FNCFSPG$BLF1)1(JU)VC https://github.com/cakephp?tab=members #VU POMZDBOQVTIEPDSFQP 137݄15݄༵
B "CPVUUIJTTFTTJPO 137݄15݄༵
B "QQJVN http://appium.io/ 137݄15݄༵
B 4UFQT w4UFQ w 4FUUJOHJ044JNVMBUPS w4UFQ w 4FUUJOH)PNFCSFX /PEFKT w4UFQ
w 4FUUJOH"QQJVN w4UFQ w 4FUUJOH1)1DPNQPOFOUT 137݄15݄༵
0WFSWJFX .BD049 1)1 "QQJVN J044JNVMBUPS 4BVDFa4BVTBHFa8FC%SJWFS5FTU$BTF FYUFOEFE 1)16OJU@&YUFOTJPOT@4FMFOJVN5FTU$BTF 1)16OJU 137݄15݄༵
B 4UFQ 4FUUJOHJ044JNVMBUPS 137݄15݄༵
B *OTUBMMJ044JNVMBUPS w%PXOMPBE9DPEFGSPN.BD"QQ4UPSF w4LJQUIJT JOUIJTUBML 137݄15݄༵
B 4UFQ 4FUUJOH)PNFCSFX /PEFKT 137݄15݄༵
)PNFCSFX w5IFNJTTJOHQBDLBHFNBOBHFSGPS049 • http://mxcl.github.io/homebrew/ w*OTUBMM • ruby -e "$(curl -fsSL
https://raw.github.com/mxcl/homebrew/go)" Homebrew B 137݄15݄༵
/PEFKT w'PSFBTJMZCVJMEJOHGBTU TDBMBCMFOFUXPSL BQQMJDBUJPOT w IUUQOPEFKTPSH B 137݄15݄༵
B *OTUBMM/PEFKT w#Z)PNFCSFX • $ brew install node w"OPUIFSXBZ CZQBDLBHFPSUBSCBMM
w :PVDBOHFUCJOBSJFTCZhttp://nodejs.org/download/ 137݄15݄༵
B 4UFQ 4FUUJOH"QQJVN 137݄15݄༵
B *OTUBMM"QQJVN w*OTUBMMCZOQN OPEFQBDLBHFNBOBHFS • $ npm install appium w
OPVTFH HMPCBM PQUJPOJOUIJTDBTF w3FTVMUTBNQMF $ npm install appium npm http GET https://registry.npmjs.org/appium npm http 304 https://registry.npmjs.org/appium npm http GET https://registry.npmjs.org/underscore [snip]
[email protected]
../../node_modules/appium ├──
[email protected]
├──
[email protected]
├──
[email protected]
├──
[email protected]
├──
[email protected]
├──
[email protected]
[snip] └──
[email protected]
(
[email protected]
,
[email protected]
,
[email protected]
, socket.io-
[email protected]
) 137݄15݄༵
B 3VO w8IFSFXBTJUJOTUBMMFE • $HOME/node_modules/appium/ (many files) • $HOME/node_modules/.bin/appium (symlink
to run) w"EE1"5) • $ export PATH=$PATH:$HOME/node_modules/.bin 137݄15݄༵
B "VUIPSJ[FJ04%FWJDF w"VUIPSJ[FJ04EFWJDF • $ sudo authorize_ios $ sudo authorize_ios
Password: Backed up to /tmp/authorization.backup.113611-37040-1twmqvz Check this diff to make sure the change looks cool: *** before --- after *************** *** 8232,8238 **** $ $ <key>system.privilege.taskport</key> $ $ <dict> $ $ $ <key>allow-root</key> ! $ $ $ <false/> $ $ $ <key>class</key> $ $ $ <string>user</string> $ $ $ <key>comment</key> --- 8232,8238 ---- $ $ <key>system.privilege.taskport</key> $ $ <dict> $ $ $ <key>allow-root</key> ! $ $ $ <true/> $ $ $ <key>class</key> $ $ $ <string>user</string> $ $ $ <key>comment</key> prompt: Make changes? [y/n] : y Wrote new /etc/authorization Authorization successful 137݄15݄༵
B 3VO"QQJVN w3VO • $ appium 137݄15݄༵
B 4UFQ 4FUUJOH1)1DPNQPOFOUT 137݄15݄༵
$PNQPTFS w%FQFOEFODZ .BOBHFSGPS1)1 w IUUQHFUDPNQPTFSPSH B 137݄15݄༵
B *OTUBMM$PNQPTFS w(FU$PNQPTFS • $ curl -sS https://getcomposer.org/installer | php
-d detect_unicode=off 137݄15݄༵
B (FUDPNQPTFSKTPO w(FUDPNQPTFSKTPOGSPN(JU)VC • $ cd YOUR_DIRECTORY • $ wget
https://raw.github.com/appium/appium/master/ sample-code/examples/php/composer.json w 5IJTJTTBNQMFpMFNBEFCZ"QQJVNQSPKFDU w*OTUBMMVTJOH$PNQPTFS • $ ./composer.phar install 137݄15݄༵
B *OTJEF$PNQPTFSKTPO w0OMZUIFGPMMPXJOH { "require": { "sauce/sausage": ">=0.6.0" } }
137݄15݄༵
B *OTUBMMTBVDFTBVTBHF w6TJOH$PNQPTFS • $ ./composer.phar install 137݄15݄༵
B *OTUBMMSFTVMUT w*OTUBMMFETBVDFTBVTBHF BOEQIQVOJU QIQVOJUTFMFOJVN Loading composer repositories with package
information Installing dependencies (including require-dev) [snip] - Installing phpunit/phpunit (3.7.22) Downloading: 100% [snip] - Installing phpunit/phpunit-selenium (1.3.1) Downloading: 100% [snip] - Installing sauce/sausage (v0.9.0) Downloading: 100% No Sauce config file found. Please run vendor/bin/sauce_config USERNAME API_KEY symfony/console suggests installing symfony/event-dispatcher () phpunit/php-code-coverage suggests installing ext-xdebug (>=2.0.5) phpunit/phpunit suggests installing phpunit/php-invoker (>=1.1.0,<1.2.0) sauce/sausage suggests installing sauce/connect (>=3.0) Writing lock file Generating autoload files 137݄15݄༵
B /BUJWF"QQ%FNP 137݄15݄༵
B 5BSHFU"QQ 137݄15݄༵
B 4BNQMF$PEFpSTUIBMG 137݄15݄༵
B 4BNQMF$PEFMBTUIBMG 137݄15݄༵
B 3FGFSFODFT 137݄15݄༵
B 1)16OJUEPDVNFOU • http://www.phpunit.de/manual/3.7/ja/selenium.html#selenium.selenium2testcase 137݄15݄༵
B 4FMFOJVN8JLJ • http://code.google.com/p/selenium/w/list 137݄15݄༵
B 5IF8FC%SJWFS8JSF1SPUDPM • http://code.google.com/p/selenium/wiki/JsonWireProtocol 137݄15݄༵
B .ZXPSLJOHEPDVNFOU • http://bit.ly/phpunit-selenium2 137݄15݄༵
B ্࣭ϒϩά • http://blog.trident-qa.com/2013/05/so-many-seleniums/ 5IJTCMPHJTOPUNJOF 137݄15݄༵
B &YUFOEFE 137݄15݄༵
B 4BVDF-BCT •https://saucelabs.com/ 137݄15݄༵
B 5IBOLT 137݄15݄༵