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 with PHPUnit - short version -
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
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.5k
Guzzle Promiseを使った 非同期処理によるAPIコールの高速化
suzuki
15
17k
PHP BLT #4
suzuki
1
5.2k
Learning Swift2 with PHP7
suzuki
2
4.3k
ポモドーロ・テクニック入門の入門
suzuki
0
760
Other Decks in Technology
See All in Technology
2年前に削除したPHPクラスが、 ある日突然決済をエラーにした
ykagano
1
730
Aurora MySQL 8.4リリース! Rubyistが備えること / what-rubyist-should-prepare-for-aurora-mysql-8-4
fkmy
0
470
全社でのソフトウェアサプライチェーン攻撃対策をやってみた with Takumi Guard
z63d
0
250
プロダクト開発組織の現在地(Ver.2026/07) / product-organization
kaonavi
0
350
AIが当たり前の組織で エンジニアはどう育つか
nishihira
1
940
文字起こし基盤の信頼性
abnoumaru
0
110
仕様駆動開発、導入半年。「本当に速くなってるの?」にデータで答える / AICon2026_hirakawa
rakus_dev
0
310
クラウドを使う側から、作る側へ / 大吉祥寺.pm 2026前夜祭
fujiwara3
3
970
非定型なドキュメントを効率よくリファクタする 〜えぇ!?仕様書27本の移行が1日で終わったって!?〜
subroh0508
2
600
生成AI×AWS CDK×AWS FISで"振り返れる"ミニGameDayをつくろう
yoshimi0227
2
520
AI時代の開発生産性は、個人技からチーム設計へ
moongift
PRO
4
2.5k
JAWS_ICEBERG_BASECAMP
iqbocchi
2
110
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.3k
How to make the Groovebox
asonas
2
2.3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
A Modern Web Designer's Workflow
chriscoyier
698
190k
A Soul's Torment
seathinner
6
3.1k
Code Review Best Practice
trishagee
74
20k
Technical Leadership for Architectural Decision Making
baasie
3
440
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
KATA
mclloyd
PRO
35
15k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Thoughts on Productivity
jonyablonski
76
5.3k
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݄༵