ハイブリッドアプリの 受け入れテスト自動化

Ad14e43e0c4a78e35255a14022cd4225?s=47 shida
December 06, 2013

ハイブリッドアプリの 受け入れテスト自動化

pgcafe 2013年 忘年会でのLT。

Ad14e43e0c4a78e35255a14022cd4225?s=128

shida

December 06, 2013
Tweet

Transcript

  1. ϋΠϒϦουΞϓϦͷ ड͚ೖΕςετࣗಈԽ QHDBGF೥๨೥ձ ࢤా༟थ 14೥1݄6೔݄༵೔

  2. ࣗݾ঺հ w ࢤా༟थ w ೥݄ಠཱ ג ϏʔɾΞδϟΠϧ୅ද w ΞδϟΠϧɺϦʔϯɾελʔτΞοϓΛ࢖ͬͨελʔ τΞοϓͷ͓ख఻͍

    w ٕज़ऀɻ3VCZPO3BJMT΍3VCZ.PUJPOͳͲɺ3VCZ ޷͖ɻ w $4. $410औಘ 14೥1݄6೔݄༵೔
  3. ελʔτΞοϓ • ৽͍͠ϏδωεϞσϧΛ։ൃ͘͠͝୹࣌ؒͷ͏ͪʹٸ ܹͳ੒௕ͱΤΫδοτΛૂ͏ࣄͰҰᏁઍۚΛૂ͏ਓʑ ͷҰ࣌తͳू߹ମ (ࢀߟ: http://blog.btrax.com/jp/ 2013/04/22/startup-2/ ) 14೥1݄6೔݄༵೔

  4. ৽͍͠ϏδωεϞσϧ • Ϣʔβʔ͕ԿʹۚΛ෷ͬͯ͘ΕΔͷ͔෼͔Βͳ͍ • ԿͰṶ͚Δ͔ܾ·͍ͬͯͳ͍ • ԿΛ࡞Δͷ͔ܾ·ͬͯͳ͍ • ࢼߦࡨޡɺԾઆݕূɺτϥΠΞϯυΤϥʔ •

    ͍͔ʹૉૣ͘ϓϩτλΠϓΛ࡞Γɺૉૣ͘ݕূ͠ɺૉ ૣࣦ͘ഊ͠ɺૉૣ͘࢓༷มߋ(ϐϘοτ)͢Δ͔ 14೥1݄6೔݄༵೔
  5. ϋΠϒϦουΞϓϦ w ωΠςΟϒΞϓϦͷதʹ8FC7JFXΛຒΊࠐΜͰɺΞϓϦͷத ͷҰ෦ ·ͨ͸େ෦෼ Λ8FCΞϓϦͰ࣮ݱ͢Δ࡞Γํ w ΫϩεσόΠεʹ༗ޮ 1$ɺJ04 "OESPJE

    εϚϗ λϒϨο τ w ৹ࠪ΍ϢʔβʔͷΞϓϦόʔδϣϯΞοϓ ߋ৽ Λཁͣ͞ʹස ൟʹΞοϓσʔτ ΧΠθϯ ͕Մೳ w ࢓༷มߋʹ༗ޮ w ύϑΥʔϚϯεɺૢ࡞ੑɺ6*ͷ౷ҰײͳͲʹ೉͋Γ w ωΠςΟϒͱɺ8FCͷ࢖͍෼͚͕ॏཁ 14೥1݄6೔݄༵೔
  6. ςετͷࣗಈԽ ͞·͟·ͳޮೳ͕͏ͨΘΕ͍ͯΔ͚Ͳʜ w සൟͳ࢓༷มߋ͕͓͖ͯ΋ίʔυΛDMFBOʹอͭ w ࢓༷มߋΛ୲อ͢Δ 14೥1݄6೔݄༵೔

  7. 8FC7JFXͱ/BUJWFͷ ੾Γ෼͚ྫ 8FC7JFX /BUJWF /BUJWF 5BQ "OJNBUJPO TFUUJUMF 14೥1݄6೔݄༵೔

  8. 8FC7JFXͱ/BUJWFͷ࿈ܞͷྫ w 8FC7JFX্ͷϦϯΫΛλοϓ w /BUJWFଆ͕ͦͷΠϕϯτΛԣऔΓ w ͦͷϦϯΫઌΛදࣔ͢Δը໘Λੜ੒ͯ͠ɺ/BUJWFͷػ ೳͰը໘ભҠ w 8FC7JFXଆ͔Βɺ্෦όʔ

    /BUJWF ͷλΠτϧΛߋ ৽ͤ͞Δ w /BUJWFͱ8FC7JFXΛߦͬͨΓདྷͨΓ w 8FCͱ/BUJWFͦΕͧΕͰͷϢχοτςετͰ͸ςετ ͕ෆे෼Ͱɺಈ͖ͷݟ௨͠΋ѱ͍ɻ 14೥1݄6೔݄༵೔
  9. "QQJVN ϞόΠϧΞϓϦͷड͚ೖΕςετࣗಈԽΤϯδϯ TFMFOJVN 8FC%SJWFS JSON wire protocol (RESTful web service)

    "QQJVN J04 "OESPJE UIAutomation UiAutomator Listen 0.0.0.0:4723 14೥1݄6೔݄༵೔
  10. σϞ w IUUQZPVUVCFC'O3937@7KP w "QQJVNΛΠϯετʔϧͯ͠ w ىಈ͓ͯ͘͠ -JTUFO 14೥1݄6೔݄༵೔

  11. σϞ JSC SFRVJSFSVCZHFNT SFRVJSFTFMFOJVNXFCESJWFS DBQT\CSPXTFS/BNFJ04 QMBUGPSN.BD WFSTJPO BQQ"11@1"5)^ VSMIUUQ\)045^\1035^XEIVC PQUT\EFTJSFE@DBQBCJMJUJFTDBQT

    CSPXTFSSFNPUF VSMVSM^ ESJWFS4FMFOJVN8FC%SJWFSGPS SFNPUF EFTJSFE@DBQBCJMJUJFTDBQT VSMVSM 14೥1݄6೔݄༵೔
  12. σϞ 8FC7JFXʹରͯ͠ΫϦοΫͯ͠ΈΔ XFCWJFXESJWFSXJOEPX@IBOEMFT<> ESJWFSTXJUDI@UPXJOEPX XFCWJFX FMNESJWFSpOE@FMFNFOU DTT ηϨΫλ` FMNDMJDL 14೥1݄6೔݄༵೔

  13. σϞ OBUJWFʹରͯ͠஋ΛͱͬͯདྷͯΈΔ ESJWFSFYFDVUF@TDSJQU NPCJMFMFBWF8FC7JFX FMNESJWFSpOE@FMFNFOU YQBUI OBWJHBUJPO#BS` FMNBUUSJCVUF OBNF 14೥1݄6೔݄༵೔

  14. 3BJMT $VDVNCFS  "QQJVN • Appium͸ɺSeleniumͷϓϩτίϧΛ࢖͍ͬͯΔ͔Β Rspec΍Cucumber͔Β࣮ߦͰ͖Δ • αʔόʔαΠυ͔ΒCucumber →

    Capybara → Selenium::WebDriver → Appium → UIAutomation → ΞϓϦ ͱͯ͠ςετΛ࣮ߦͰ͖Δ • Database Cleaner΍ɺFactoryGirlͳͲʹΑΔσʔλϕ ʔεͷॳظԽΛͨ͠ޙʹςετΛ࣮ߦͰ͖Δ • ϚϧνσόΠεରԠ͍ͯ͠Δ৔߹ɺෳ਺ͷ؀ڥͰಉ͡ς ετγφϦΦΛڞ༻ग़དྷΔ(ϫϯιʔε) 14೥1݄6೔݄༵೔
  15. ·ͱΊ • ࢓༷มߋΛ܁Γฦ͢Α͏ͳਐΊํʹ͸ϋΠϒϦουΞϓ ϩʔν΍ςετͷࣗಈԽ͕༗ޮ • AppiumͰϋΠϒϦουΞϓϦͷςετΛࣗಈԽͰ͖Δ • Appium͸SeleniumͷϓϩτίϧΛ࠾༻͍ͯ͠ΔͷͰɺ طଘͷΞʔΩςΫνϟʹͦͷ··૊ࠐΉࣄ͕Ͱ͖Δ 14೥1݄6೔݄༵೔

  16. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ 14೥1݄6೔݄༵೔