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

ReproにおけるAppiumの活用事例

jollyjoester
November 18, 2016

 ReproにおけるAppiumの活用事例

iOS Test Night #1での発表資料
https://testnight.connpass.com/event/41323/

jollyjoester

November 18, 2016
Tweet

More Decks by jollyjoester

Other Decks in Technology

Transcript

  1. Reproʹ͓͚Δ
    Appiumͷ׆༻ࣄྫ
    jollyjoester@iOS_Test_Night_#1
    2016/11/18

    View full-size slide

  2. Coming
    Soon
    ͓લ୭Αʁ
    ࣣౡҒ೭ ʢ@jollyjoesterʣ
    SwiftѪ޷ձͱ͍͏ษڧձΛఆظతʹ։࠵
    Repro / ΧελϚʔαϙʔτ

    View full-size slide

  3. ϞόΠϧΞϓϦͷ՝୊ͷൃݟ͔Β
    ղܾͷํ๏·ͰϫϯετοϓͰఏڙ͢ΔαʔϏε

    View full-size slide

  4. ߦಈσʔλ ߦಈσʔλ
    Ϛ
    ʔές
    Ο
    ϯά
    ఆੑ෼ੳ
    ఆྔ෼ੳ

    View full-size slide

  5. ΞφϦςΟΫε

    View full-size slide

  6. Ωϟϯϖʔϯ
    ϓογϡ௨஌ ΞϓϦ಺ϝοηʔδ

    View full-size slide

  7. Reproͷ͛͢ʔͬ͘͟Γͱͨ͠࢓૊Έ
    Repro

    View full-size slide

  8. ࠓճͷ࿩͸͜͜ͷ෦෼
    Repro

    View full-size slide

  9. ※ಋೖͷ࿩ͱ͔͸ࠓ೔͸ͳ͍Ͱ͢ɻ
    ʢͦΜͳʹ೉͘͠ͳ͍ɾɾɾΊͬͪΌ͸·ͬͨهԱ͋Δ͚Ͳʣ
    ʢ͋ͱΊͬͪΌటष͍࿩Ͱ͢ʣ

    View full-size slide

  10. SDKͳͷʹAppiumͰςετʁ

    View full-size slide

  11. SDK୯ಠͰࡁΉ෦෼͸௨ৗͷUnitTestͰࡁΈ

    View full-size slide

  12. AppiumΛ࢖͏ͷ͸ΞϓϦͷঢ়ଶ͕བྷΉ৔߹

    View full-size slide

  13. ༨ஊ
    iOS-SDK͸Objective-CͷstaticϥΠϒϥϦ
    Ͱ΋ςετ͸Quick࢖ͬͯSwiftͰॻ͍ͯΔ
    ͦͯ͠Appiumͷςετ͸KotlinͰॻ͍ͯΔ

    View full-size slide

  14. ༨ஊ
    iOS-SDK͸Objective-CͷstaticϥΠϒϥϦ
    Ͱ΋ςετ͸Quick࢖ͬͯSwiftͰॻ͍ͯΔ
    ͦͯ͠Appiumͷςετ͸KotlinͰॻ͍ͯΔ
    ͩͬͯ৽͍͠ݴޠ࢖͍͍͔ͨΒ(´ʀωʀʆ)

    View full-size slide

  15. ΞϓϦͷϥΠϑαΠΫϧ
    ը໘ͷϥΠϑαΠΫϧ
    σϦήʔτϝιουͷίʔϧͷλΠϛϯά
    ը໘ભҠ
    ୺຤ͷճస
    ɾɾɾ
    SDKͷಈ࡞͸ΞϓϦͷঢ়ଶʹେ͖͘Өڹ͞ΕΔ

    View full-size slide

  16. SDKར༻ऀ͕࣮૷ͦ͠͏ͳଟ͘ͷύλʔϯͰ֬ೝ
    ઃఆͷON/OFF SDK APIίʔϧͷ༗ແ
    Ϣʔβʔ͕࣮૷ͦ͠͏ͳ
    ͋ΒΏΔػೳ

    View full-size slide

  17. ΞϓϦͷϥΠϑαΠΫϧ
    ը໘ͷϥΠϑαΠΫϧ
    σϦήʔτϝιουͷίʔϧͷλΠϛϯά
    ը໘ભҠ
    ୺຤ͷճస
    ɾɾɾ
    SDKͷಈ࡞͸ΞϓϦͷঢ়ଶʹେ͖͘Өڹ͞ΕΔ
    ͔͠΋͍ͭ͜Β
    γϛϡϨʔλʔͱ࣮ػɺҟͳΔ୺຤ɺiOSͷϚΠφʔ/ϝδϟʔ
    όʔδϣϯΞοϓͰඍົʹมΘΔʂ

    ɾɾɾ͜ͱ͕͋Δ

    View full-size slide

  18. ࠷ऴతʹ͸࣮ػͰ͍Ζ͍ΖͳύλʔϯΛಈ͔ͯ͠
    ֬ೝ͢Δඞཁ͕͋Δ

    View full-size slide

  19. ࠷ऴతʹ͸࣮ػͰ͍Ζ͍Ζͳύλʔϯ(´ʀωʀʆ)

    View full-size slide

  20. ͔͠΋͓٬͞ΜʹݴΘΕΔ͜ͱ
    iOS6Ͱ͸ಈ͔ͳ͍ΜͰ͔͢ʁ
    iPod TouchͰ͸ಈ͔ͳ͍ΜͰ͔͢ʁ

    View full-size slide

  21. ࠷ऴతʹ͸͍Ζ͍Ζͳ࣮ػͰ͍Ζ͍Ζͳύλʔϯ
    (´ʀωʀʆ)

    View full-size slide

  22. ͦ͜ͰAppiumઌੜ

    View full-size slide

  23. ͍ΖΜͳϓϥοτϑΥʔϜͰ࢖͑ΔࣗಈԽϑϨʔϜϫʔΫ
    ͍ΖΜͳݴޠͰςετ͕ॻ͚Δ
    ֤ϓϥοτϑΥʔϜͷࣗಈԽͷ࢓૊ΈΛར༻
    Appium

    View full-size slide

  24. ม͑Δͷ͸OSόʔδϣϯɺ୺຤छྨͰOK
    ʢࣗ෼Ͱ४උʣ

    ઃఆ΍ૢ࡞ʹ͍ͭͯ͸͋Β͔͡ΊܾΊͨγφϦΦ
    ʹ٧ΊࠐΉ
    ʢAppiumͷςετॻ͘ʣ

    Appiumઌੜ͕উखʹ΍ͬͯ͘ΕΔ

    View full-size slide

  25. ΤϏσϯε͸ʁ

    View full-size slide

  26. ૢ࡞ϩάΛαʔόʔʹసૹ
    Reproͷը໘࿥ըͰݟͨ໨͸࿥ը
    Repro

    View full-size slide

  27. ૢ࡞͢Δඞཁͳ͠
    ಈ͔ͯ͠ΔؒݟͯΔඞཁ΋ͳ͠
    ޙ͔Β͍͘ΒͰ΋ݟฦͤΔ

    View full-size slide

  28. ྑ͔ͬͨ(`ɾωɾ
     )ʍ

    View full-size slide

  29. Μʁ࿥ըʁ
    εΫγϣͰྑ͘Ͷʁ

    View full-size slide

  30. ࣮͸ΞχϝʔγϣϯʹؔΘΔ෦෼Ͱ
    ֬ೝ͍ͨ͠Օॴ͕͚ͬ͜͏͋Δ
    ΞϓϦ಺ϝοηʔδ
    ը໘࿥ը࣌ͷϚεΫ

    ʢ※྆ํReproͷػೳʣ

    View full-size slide

  31. ϚεΫػೳ
    View΍࠲ඪΛࢦఆͯ֘͠౰෦෼Λ࿥ը͠ͳ͍Α
    ͏ʹ͢Δػೳ

    ֘౰͢Δ࠲ඪΛృΓͭͿ࣮ͯ͠ݱ͍ͯ͠Δͷ͕ͩɺ
    ࠲ඪͷऔಘλΠϛϯά͕গ͠Ͱ΋஗ΕΔͱϚεΫ
    ͕ͣΕͯӅ͍ͨ͠ͱ͕͜ݟ͑ͯ͠·͏

    View full-size slide

  32. ϚεΫػೳ
    Ξχϝʔγϣϯͷࡉ͔͍ͱ͜·ͰνΣοΫ

    View full-size slide

  33. ͱ͍͏͜ͱͰ࠷ޙʹ࢒ͬͨେมͳͱ͜Ζ
    ࿥ըΛͻͨ͢Βݟͯ໰୊఺͕ͳ͍͔νΣοΫ
    ʢ※͍Ζ͍Ζؾ͖͕ͮ͋ΔϙΠϯτͳͷͰ͜͜͸
    ਓ͕ͬ͘͡Γߦ͏ʣ

    View full-size slide

  34. ͦͷ͏ͪ
    DeviceFirmΈ͍ͨͳͱ͜࢖ͬͯ
    CIʹ৐ͤͨ͘͸͋Δ

    View full-size slide

  35. Appiumઌੜॿ͔Δ
    खલຯḩͳΜ͚ͩͲΞχϝʔγϣϯͱ͔νΣοΫ
    ͍ͨ͠৔߹͸ReproͰ࿥ը͠ͱ͘ͱศར
    ·ͱΊ

    View full-size slide