首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何添加Calabash以响应Xamarin.UITest的本机iOS

如何添加Calabash以响应Xamarin.UITest的本机iOS
EN

Stack Overflow用户
提问于 2017-01-05 22:16:29
回答 2查看 1.4K关注 0票数 2

如何将添加到构建在Reactinative中的iOS应用程序中?

我们正在将iOS应用程序的代码库从Swift移到Reactive原住民,我使用Xamarin.UITest在C#中构建了一个现有的UITests套件。

我想继续使用我的Xamarin.UITest套件来开发React应用程序,但我知道Xamarin.UITest需要在应用程序的源代码中链接卡拉巴斯框架。

Xamarin有文档关于如何链接Xcode中的iOS应用程序的Calabash,但是我找不到任何关于如何将Calabash链接到一个内置于Reacti原住民的iOS应用程序的文档。

有没有类似的文档显示如何将Calabash链接到本地iOS应用程序?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-01-10 00:08:59

内置于React的iOS应用程序自动创建.xcodeproj文件,并依赖Xcode项目进行构建/部署。这里是一个新初始化的的映像。

Xamarin.UITest要求将Calabash链接到iOS应用程序。因为React本地iOS应用程序依赖于.xcodeproj,所以我们可以按照相同的步骤注入Calabash,就好像应用程序是用Swift/ObjC编写的。要完成这个任务,请遵循这个教程: Debug配置中的链接Calabash

在JavaScript源代码中,使用accessibilityLabel属性向每个屏幕上元素添加唯一标识符。在这个例子中我们已经确认我们的TextInput是"TextInputAccessibilityId“。

在Xamarin.UITest中,我们现在可以创建一个字段readonly Query TextInput,并使用相同的属性TextInput = x => x.Marked("TextInputAccessibilityId");对其进行初始化。现在我们可以在我们的Xamarin.UITest中与这个屏幕上的元素交互了!

所有测试都在Xamarin测试云和在这里可以看到结果。中进行了验证。

票数 3
EN

Stack Overflow用户

发布于 2017-01-06 22:19:42

用Xamarin试验记录仪在IPA中注射卡拉巴斯

您可以使用的一个选项是使用Xamarin测试记录器将Calabash注入您的IPA:https://developer.xamarin.com/guides/testcloud/testrecorder/

该方法与构建原始IPA所使用的内容不相关,因为它将其注入编译的IPA中。在设置应用程序以使用记录器:测试之后,Xamarin测试记录器就会这样做。

此时,您可以使用测试记录器本身创建UITests并导出它们:测试。或者,您可以选择辞职的IPA,它将位于与原始IPA相同的位置,其名称以"xtr-“开头,如下所示:

  • myAwesomeApp.ipa (原始IPA)
  • xtr-myAwesomeApp.ipa (带卡拉巴斯的IPA)

值得注意的事情

  • IPA是由测试记录器辞职的--为了让Xamarin测试记录器注入Calabash,它还需要辞职IPA。为此,辞职系统需要有一个有效的签名标识和配置配置文件,包括应用程序使用的权利。
  • 任何包含卡拉巴斯的IPA都将被iOS应用商店拒绝--无论使用何种方法向IPA添加卡拉巴斯,这都是正确的,但记住这一点很重要。在上面的示例中,您将使用xtr-myAwesomeApp.ipa进行测试,并将myAwesomeApp.ipa本身提交到应用程序商店。
  • 记录测试必须作为一个单独的.cs文件导出以供使用--即使您记录了一些测试,这些测试也不直接包含在IPA本身中,但是tests可以将它们导出为一个.cs文件,其结构与手工编写Xamarin.UITests的方式相同。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41495702

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档