How do I automate iOS apps that I don't own on real iOS devices using Appium












2















First, I know there is already a similar question asked (How do I automate an app that is not mine using appium on an ios device), but it's been a while and I am hoping to find out if there is any new information or technology to achieve it.



So, the goal is to automate iOS apps that I do not own (e.g. GoogleMaps) using Appium on real iOS devices. So far the closest way I can achieve that is by using a tool like iMazing to download an app installed from App Store into an IPA file, and then have Appium to automate it using the "App" capability. But this only works if the AppleId in the IPA file's itunesmetadata.plist matches the device used for the test. So if I were to run the automation on a different device I have to unzip the IPA file, modify the AppleId to match the device, and then archive it back.



QUESTIONS




  1. I'm trying to find a way for not having to do this, a way to extract/download an app I don't own and produces an app file that Appium can just automate.

  2. Or, even a wholly different (and better) way to achieve my goal - to automate iOS apps that I do not own (e.g. GoogleMaps) using Appium on real iOS devices.










share|improve this question





























    2















    First, I know there is already a similar question asked (How do I automate an app that is not mine using appium on an ios device), but it's been a while and I am hoping to find out if there is any new information or technology to achieve it.



    So, the goal is to automate iOS apps that I do not own (e.g. GoogleMaps) using Appium on real iOS devices. So far the closest way I can achieve that is by using a tool like iMazing to download an app installed from App Store into an IPA file, and then have Appium to automate it using the "App" capability. But this only works if the AppleId in the IPA file's itunesmetadata.plist matches the device used for the test. So if I were to run the automation on a different device I have to unzip the IPA file, modify the AppleId to match the device, and then archive it back.



    QUESTIONS




    1. I'm trying to find a way for not having to do this, a way to extract/download an app I don't own and produces an app file that Appium can just automate.

    2. Or, even a wholly different (and better) way to achieve my goal - to automate iOS apps that I do not own (e.g. GoogleMaps) using Appium on real iOS devices.










    share|improve this question



























      2












      2








      2








      First, I know there is already a similar question asked (How do I automate an app that is not mine using appium on an ios device), but it's been a while and I am hoping to find out if there is any new information or technology to achieve it.



      So, the goal is to automate iOS apps that I do not own (e.g. GoogleMaps) using Appium on real iOS devices. So far the closest way I can achieve that is by using a tool like iMazing to download an app installed from App Store into an IPA file, and then have Appium to automate it using the "App" capability. But this only works if the AppleId in the IPA file's itunesmetadata.plist matches the device used for the test. So if I were to run the automation on a different device I have to unzip the IPA file, modify the AppleId to match the device, and then archive it back.



      QUESTIONS




      1. I'm trying to find a way for not having to do this, a way to extract/download an app I don't own and produces an app file that Appium can just automate.

      2. Or, even a wholly different (and better) way to achieve my goal - to automate iOS apps that I do not own (e.g. GoogleMaps) using Appium on real iOS devices.










      share|improve this question
















      First, I know there is already a similar question asked (How do I automate an app that is not mine using appium on an ios device), but it's been a while and I am hoping to find out if there is any new information or technology to achieve it.



      So, the goal is to automate iOS apps that I do not own (e.g. GoogleMaps) using Appium on real iOS devices. So far the closest way I can achieve that is by using a tool like iMazing to download an app installed from App Store into an IPA file, and then have Appium to automate it using the "App" capability. But this only works if the AppleId in the IPA file's itunesmetadata.plist matches the device used for the test. So if I were to run the automation on a different device I have to unzip the IPA file, modify the AppleId to match the device, and then archive it back.



      QUESTIONS




      1. I'm trying to find a way for not having to do this, a way to extract/download an app I don't own and produces an app file that Appium can just automate.

      2. Or, even a wholly different (and better) way to achieve my goal - to automate iOS apps that I do not own (e.g. GoogleMaps) using Appium on real iOS devices.







      appium appium-ios






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 19 '18 at 18:51









      Wasiq Bhamla

      701159




      701159










      asked Nov 15 '18 at 22:30









      Mark.HMark.H

      265




      265
























          2 Answers
          2






          active

          oldest

          votes


















          0














          Sorry, its still not possible.



          You can interact with apps, you don't own in very limited way (if it is running on simulator, than only with pre-installed apps + yours, installed from XCode).



          In case of real device - as you said - you can install it via IPA file and try to automate it after this by modifying the plist. This could be (in theory) done by some script, that you would provide the package, it would disassemble it, change the line in plist file and assemble it back together for all devices, you need.
          There is no other way to do this (afaik). That should answer your 1/.



          As to the point 2/. Why would you want to automate testing for apps, you don't own? Yes, you may have webview or Google Maps plugin, you want to test, but you can test that without installing the full app.






          share|improve this answer































            0














            In order to run app which is already installed on the device and is not owned by you, you can use bundleId capability with bundle id of the app to automate.



            You can learn more about how to get the bundleId for an installed app, here.






            share|improve this answer























              Your Answer






              StackExchange.ifUsing("editor", function () {
              StackExchange.using("externalEditor", function () {
              StackExchange.using("snippets", function () {
              StackExchange.snippets.init();
              });
              });
              }, "code-snippets");

              StackExchange.ready(function() {
              var channelOptions = {
              tags: "".split(" "),
              id: "1"
              };
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function() {
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled) {
              StackExchange.using("snippets", function() {
              createEditor();
              });
              }
              else {
              createEditor();
              }
              });

              function createEditor() {
              StackExchange.prepareEditor({
              heartbeatType: 'answer',
              autoActivateHeartbeat: false,
              convertImagesToLinks: true,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: 10,
              bindNavPrevention: true,
              postfix: "",
              imageUploader: {
              brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
              contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
              allowUrls: true
              },
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              });


              }
              });














              draft saved

              draft discarded


















              StackExchange.ready(
              function () {
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53328789%2fhow-do-i-automate-ios-apps-that-i-dont-own-on-real-ios-devices-using-appium%23new-answer', 'question_page');
              }
              );

              Post as a guest















              Required, but never shown

























              2 Answers
              2






              active

              oldest

              votes








              2 Answers
              2






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes









              0














              Sorry, its still not possible.



              You can interact with apps, you don't own in very limited way (if it is running on simulator, than only with pre-installed apps + yours, installed from XCode).



              In case of real device - as you said - you can install it via IPA file and try to automate it after this by modifying the plist. This could be (in theory) done by some script, that you would provide the package, it would disassemble it, change the line in plist file and assemble it back together for all devices, you need.
              There is no other way to do this (afaik). That should answer your 1/.



              As to the point 2/. Why would you want to automate testing for apps, you don't own? Yes, you may have webview or Google Maps plugin, you want to test, but you can test that without installing the full app.






              share|improve this answer




























                0














                Sorry, its still not possible.



                You can interact with apps, you don't own in very limited way (if it is running on simulator, than only with pre-installed apps + yours, installed from XCode).



                In case of real device - as you said - you can install it via IPA file and try to automate it after this by modifying the plist. This could be (in theory) done by some script, that you would provide the package, it would disassemble it, change the line in plist file and assemble it back together for all devices, you need.
                There is no other way to do this (afaik). That should answer your 1/.



                As to the point 2/. Why would you want to automate testing for apps, you don't own? Yes, you may have webview or Google Maps plugin, you want to test, but you can test that without installing the full app.






                share|improve this answer


























                  0












                  0








                  0







                  Sorry, its still not possible.



                  You can interact with apps, you don't own in very limited way (if it is running on simulator, than only with pre-installed apps + yours, installed from XCode).



                  In case of real device - as you said - you can install it via IPA file and try to automate it after this by modifying the plist. This could be (in theory) done by some script, that you would provide the package, it would disassemble it, change the line in plist file and assemble it back together for all devices, you need.
                  There is no other way to do this (afaik). That should answer your 1/.



                  As to the point 2/. Why would you want to automate testing for apps, you don't own? Yes, you may have webview or Google Maps plugin, you want to test, but you can test that without installing the full app.






                  share|improve this answer













                  Sorry, its still not possible.



                  You can interact with apps, you don't own in very limited way (if it is running on simulator, than only with pre-installed apps + yours, installed from XCode).



                  In case of real device - as you said - you can install it via IPA file and try to automate it after this by modifying the plist. This could be (in theory) done by some script, that you would provide the package, it would disassemble it, change the line in plist file and assemble it back together for all devices, you need.
                  There is no other way to do this (afaik). That should answer your 1/.



                  As to the point 2/. Why would you want to automate testing for apps, you don't own? Yes, you may have webview or Google Maps plugin, you want to test, but you can test that without installing the full app.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Nov 16 '18 at 11:21









                  VáclavVáclav

                  11611




                  11611

























                      0














                      In order to run app which is already installed on the device and is not owned by you, you can use bundleId capability with bundle id of the app to automate.



                      You can learn more about how to get the bundleId for an installed app, here.






                      share|improve this answer




























                        0














                        In order to run app which is already installed on the device and is not owned by you, you can use bundleId capability with bundle id of the app to automate.



                        You can learn more about how to get the bundleId for an installed app, here.






                        share|improve this answer


























                          0












                          0








                          0







                          In order to run app which is already installed on the device and is not owned by you, you can use bundleId capability with bundle id of the app to automate.



                          You can learn more about how to get the bundleId for an installed app, here.






                          share|improve this answer













                          In order to run app which is already installed on the device and is not owned by you, you can use bundleId capability with bundle id of the app to automate.



                          You can learn more about how to get the bundleId for an installed app, here.







                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered Nov 19 '18 at 7:31









                          Wasiq BhamlaWasiq Bhamla

                          701159




                          701159






























                              draft saved

                              draft discarded




















































                              Thanks for contributing an answer to Stack Overflow!


                              • Please be sure to answer the question. Provide details and share your research!

                              But avoid



                              • Asking for help, clarification, or responding to other answers.

                              • Making statements based on opinion; back them up with references or personal experience.


                              To learn more, see our tips on writing great answers.




                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function () {
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53328789%2fhow-do-i-automate-ios-apps-that-i-dont-own-on-real-ios-devices-using-appium%23new-answer', 'question_page');
                              }
                              );

                              Post as a guest















                              Required, but never shown





















































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown

































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown







                              Popular posts from this blog

                              Florida Star v. B. J. F.

                              Error while running script in elastic search , gateway timeout

                              Retrieve a Users Dashboard in Tumblr with R and TumblR. Oauth Issues