iOS设备上不支持逻辑测试?

14

我正在使用SenTestingKit进行单元测试,但是我收到了以下消息:

iOS设备上不支持逻辑测试。您可以在模拟器上运行逻辑测试。

我该怎么做?


2
请花点时间写一个明智、易于理解的问题。 - PengOne
看起来你需要在模拟器上进行逻辑测试。 - Jumhyn
5个回答

30
你需要拥有一个主机应用程序

enter image description here

请注意,该图像指向测试目标配置的常规选项卡。


1
FYI,这与一个框架项目无关。 - OhadM
6
不同意。你只需要在框架项目设置中创建一个新的“TestHost”应用程序目标——只需使用基本的单视图应用程序即可,除了将你的框架添加到嵌入式二进制构建设置之外,不需要进行任何自定义。简单易行的。 - Slipp D. Thompson
1
我无法选择应用程序选项。 - Rajesh Maurya

16

逻辑测试只能在模拟器上运行,您需要切换到模拟器进行测试,如下所示:

enter image description here

逻辑测试需要一个特殊的单元测试启动器,在实际设备上未安装。

如果您想在实际设备上运行测试,则可以转换为应用程序单元测试,它们基本相同,但您的应用程序会首先被启动(作为“主机”),然后您的测试将与其一起运行。这意味着您的测试可以在任何您的应用程序支持的设备上运行。唯一的缺点是您的实际应用程序将在运行,这可能会干扰您的测试,特别是如果您使用了大量通知功能。


0

我们必须通过webdriverAgentRunner在cxode中构建和测试项目。选择真实设备:webdriverAgentRuuner>>设备名称


0
如果您是在进行自动化测试时遇到这个问题,那么“是的,您必须将WebDriverAgentRunner更改为真实设备并重新运行测试”。错误将会消失。

0

Quanlong的回答是正确的,但它没有描述细节。以下是在真实设备上测试框架所需的步骤:

  1. 在目标列表下单击“+”号,添加一个类型为“应用程序”的目标。 “TestHost”是一个好名字。

  2. Tests目标的“常规”选项卡下,将TestHost添加为“主机应用程序”

  3. TestHost目标的“常规”选项卡下,将框架本身添加到“框架、库和嵌入式内容”列表中

  4. 如果框架使用Pods,请编辑Podfile,添加一个target 'TestHost' do部分,并确保所有pods也安装到TestHost目标中


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接