Upgrade to Pro — share decks privately, control downloads, hide ads and more …

UIテストをカジュアルに自動化 / UI Automation using Remote

horimislime
January 15, 2015

UIテストをカジュアルに自動化 / UI Automation using Remote

horimislime

January 15, 2015
Tweet

More Decks by horimislime

Other Decks in Technology

Transcript

  1. ը໘ϙνΔͷ΍Ί͍ͨ!
    * UIςετΛΧδϡΞϧʹޮ཰Խ *
    @horimislime
    potatotips #13 1

    View full-size slide

  2. ࣗݾ঺հ & ࿩͢͜ͱ
    • @horimislime
    • CyberAgent, Inc
    • 8݄͔ΒiOS։ൃ(ݩŢƄŒŰƄ࢖͍)
    • UIςετͷखؒΛল͘ํ๏ʹ͍ͭͯ
    potatotips #13 2

    View full-size slide

  3. ը໘ϙνΔͷ͕πϥ͍݅
    potatotips #13 3

    View full-size slide

  4. ͱ͋Δػೳͷ௥Ճվम
    • ಈըΛՃ޻ͯ͠ϒϩάʹషΓ෇͚Δ
    • εϥΠμʔͰ௕͞ௐ੔ͯ͠τϦϛϯά
    • ϒϩάΤσΟλͷҰ෦ػೳͱͯ͠ఏڙ
    potatotips #13 4

    View full-size slide

  5. potatotips #13 5

    View full-size slide

  6. ςετ͢Δ·Ͱ͕௕͍⌛
    • ίʔυमਖ਼ɺγϛϡϨʔλىಈ
    • ໨తͷը໘·Ͱ7ճΫϦοΫ΋
    • ͔͔Δ࣌ؒ͸΋ͪΖΜɺΫϦοΫʹਆܦ࢖͏ͷπϥ͍
    potatotips #13 6

    View full-size slide

  7. ͱ͸͍͑ɺखؒ͸͔͚ͨ͘ͳ͍
    • UIςετFrameworkೖΕΔʁ
    • ໨తͷը໘·ͰͷભҠ͚ͩࣗಈԽ͍ͨ͠
    • ςετέʔε͸ΧδϡΞϧʹ࡞੒ɾഁغ͍ͨ͠
    • ͋Μ·ϝϯςͨ͘͠ͳ͍ɾɾ
    potatotips #13 7

    View full-size slide

  8. ͳΜͱָ͔ͯࣗ͠ಈԽ͍ͨ͠
    potatotips #13 8

    View full-size slide

  9. Remote
    https://github.com/johnno1962/Remote
    potatotips #13 9

    View full-size slide

  10. Remote
    • https://github.com/johnno1962/
    Remote
    • Selenium IDEΛXCodeʹ͖࣋ͬͯͨ
    Α͏ͳΠϝʔδ
    • XCode PluginೖΕΔ͚ͩͰ࢖͑Δʂ
    potatotips #13 10

    View full-size slide

  11. ࣮ࡍʹಈ͔ͯ͠Έ·͢ !
    potatotips #13 11

    View full-size slide

  12. ࣮ػ΋ϦϞʔτ੍ޚ ⭕
    • main.mʹ௥ه͕ඞཁ
    • iPhone→฼؋MacʹίωΫγϣϯషͬͯΔ
    // Remote Plugin patch start //
    #ifdef DEBUG
    #define REMOTEPLUGIN_SERVERIP "10.0.1.3" //
    #include "/Users/horimislime/Library/Application Support/Developer/Shared/Xcode/Plug-ins/Remote.xcplugin/Contents/Resources/RemoteCapture.h"
    #endif
    // Remote Plugin patch end //
    potatotips #13 12

    View full-size slide

  13. ΧδϡΞϧʹಋೖ & ར༻
    • جຊతʹPluginೖΕΔ͚ͩ
    • ը໘ΛҰ౓ϙν͍͚ͬͯ͹ಉ͡ϑϩʔΛ࠶ݱՄ
    • ୯७ͳϚΫϩΛ࿔Ε͹Ԡ༻΋ՄɻςετίʔυཁΒͣ
    potatotips #13 13

    View full-size slide

  14. • Snapshot Testing
    • ಈըࡱӨػೳ
    potatotips #13 14

    View full-size slide

  15. ੍໿
    • MoviePlayer, ActionSeet, OpenGLͳͲͷ੍ޚ
    • ෳ਺ͷiOSσόΠεΛҰׅૢ࡞
    • ͜ΕରԠͨ͠Βخ͍͠ͳ͊ɾɾ
    potatotips #13 15

    View full-size slide

  16. ·ͱΊ
    • RemoteͰΧδϡΞϧʹը໘ભҠΛࣗಈԽ
    • 10ඵ͘Β͍ͷ࡞ۀ΋ࣗಈԽͯ͠ϥΫ͠Α͏ ☕
    potatotips #13 16

    View full-size slide

  17. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ !
    potatotips #13 17

    View full-size slide