为什么我在AWS Device farm中收到此错误?由于测试包解析错误而跳过了测试。请检查解析结果以获取更多详细信息

时间:2018-08-02 17:22:11

标签: amazon-web-services calabash calabash-android aws-device-farm

在AWS Device Farm中,我创建了一个新运行。我选择了本机应用程序。我上传了APK。我选择了Calabash作为测试。我收到此错误消息:

Tests skipped due to test package parsing error. Please check Parsing result for more details.

我下载了解析结果。这就是它的意思:

  

无法运行黄瓜空运行命令。有关更多详细信息,请参见下面的信息。

以下是解析结果的内容:

'cucumber --dry-run --format json --out /tmp/scratchvxnAeX.scratch/tmpF6f5Xx' failed.    
Could not find proper version of cucumber (2.99.0) in any of the sources    
Run `bundle install` to install missing gems.

1 个答案:

答案 0 :(得分:1)

解决方案

我有一些.rb页对象。我在这些文件的顶部添加了require 'calabash-android'。然后,我进行了新的运行并运行了它。奏效了。

我如何找到解决方案

通过Google,我遇到了CALABASH_TEST_PACKAGE_DRY_RUN_FAILED here

运行此命令失败:cucumber-ios --dry-run --format json features

我认为这是针对ios的。所以我尝试了这个:bundle exec calabash-android run .\app-releaseStaging.apk --dry-run。我收到此错误:

uninitialized constant Calabash::ABase (NameError)

在本地运行时我没有收到该错误。

根据this

  

-d--dry-run调用格式化程序而不执行步骤。如果存在,还会忽略对support / env.rb文件的加载。

我在require 'calabash-android'内有env.rb。所以我将其移至页面对象。然后它起作用了。

您可能会发现aws-device-farm-calabash-tests-for-sample-app有用。