xCode使用UITesting for AWS Device farm归档ipa

时间:2016-05-12 10:45:24

标签: ios xcode amazon-web-services jenkins

我正在为UITesting做,我尝试过Jenkins。我打算尝试使用AWS Device farm。

http://docs.aws.amazon.com/devicefarm/latest/developerguide/test-types-ios-xctest-ui.html#test-types-ios-xctest-ui-prepare

这样说。

  

在将iOS XCTest UI测试上传到Device Farm进行测试之前,请先制作   确保您的iOS XCTest UI测试运行器包包含在一个   格式正确的.ipa文件。要创建.ipa文件,您可以放置   你的my-project-nameUITest-Runner.app捆绑在一个空的Payload中   目录。接下来,将Payload目录存档到.zip文件中   然后将文件扩展名更改为.ipa。 * UITest-Runner.app包   是在构建用于测试的项目时由Xcode生成的   可以在项目的Products目录中找到。

我不明白这一点。如何归档以便我的UITesting与ipa文件一起使用?我确实喜欢这个(如下图所示)并且在aws设备农场测试是不可行的。

enter image description here

已编辑

我尝试了以下方法,但仍然有问题。我需要上传ipa文件2次。我需要在第一次和第二次上传什么样的ipa文件?

enter image description here

2 个答案:

答案 0 :(得分:3)

我在AWS Device Farm团队工作。

@ThrowingSpoon正确地解释了测试的存档部分。

  1. 设备服务器场需要您的应用程序和.ipa文件形式的测试。该应用和测试将是两个单独的上传。在您发布的屏幕截图中,您可以看到左侧的5个步骤。第一次上传将是您的应用程序ipa,第二次上传将是您在第2步中的测试。
  2. 对于您的应用,这是通过Xcode的直接过程。存档您的应用程序并使用show in finder查找ipa。
  3. 如果你的测试,Xcode不会产生你的测试的ipa,所以我们必须创建一个。
  4. 首先构建您的项目以进行测试。
  5. * UITest-Runner.app包将由Xcode在您项目的Products目录下生成。
  6. 创建一个空的“Payload”(区分大小写)文件夹,并在“Payload”下添加* UITest-Runner.app。
  7. 右键单击Payload文件夹并将其压缩为zip文件。
  8. 将.zip文件重命名为.ipa(可能会询问您是否要保留扩展名,接受它)
  9. 形成的.ipa是您在发布的屏幕截图的第2步中上传的内容。
  10. 希望澄清你的疑问。

答案 1 :(得分:1)

我写了一篇关于如何准备测试以在AWS Device Farm上运行的教程,请看一步一步的方法。 http://mobdesignapps.fr/blog/2016/9/17/running-your-test-on-aws-device-farm?utm_source=stackoverflow&utm_medium=answer&utm_term=37184633

您需要上传的第一个文件是您通过选择Project>构建的应用程序存档。存档。第二个是包含测试的IPA。您可以在我的博文中找到如何生成它的步骤。

简短版本是:

  1. 选择您的测试目标,然后选择项目>构建用于测试
  2. * UITest-Runner.app包将由Xcode在派生数据文件夹的Products目录下生成。
  3. 创建一个空的“Payload”(区分大小写)文件夹并添加* UITest-Runner.app 在“有效载荷”下。
  4. 右键单击Payload文件夹并将其压缩为zip文件。
  5. 将.zip文件重命名为.ipa