Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xamarin.UITest AppCenter找不到test-cloud.exe_Xamarin_Visual Studio App Center_Xamarin.uitest_Visual Studio App Center Test - Fatal编程技术网

Xamarin.UITest AppCenter找不到test-cloud.exe

Xamarin.UITest AppCenter找不到test-cloud.exe,xamarin,visual-studio-app-center,xamarin.uitest,visual-studio-app-center-test,Xamarin,Visual Studio App Center,Xamarin.uitest,Visual Studio App Center Test,我已经创建了Xamarin.UITest,可以在我的桌面上本地运行。我的目标是作为构建后脚本的一部分执行这些测试,以便在应用程序按照本文所述构建后运行UITest: 下面是我的剧本 appcenter test run uitest --app "MY-APP" --devices 168683d9 --app-path $APPCENTER_OUTPUT_DIRECTORY/MyApp.Mobile.Droid.apk --test-series "myapp-mobile-test"

我已经创建了Xamarin.UITest,可以在我的桌面上本地运行。我的目标是作为构建后脚本的一部分执行这些测试,以便在应用程序按照本文所述构建后运行UITest:

下面是我的剧本

appcenter test run uitest --app "MY-APP" --devices 168683d9 --app-path $APPCENTER_OUTPUT_DIRECTORY/MyApp.Mobile.Droid.apk  --test-series "myapp-mobile-test"  --locale "en_US" --build-dir $APPCENTER_SOURCE_DIRECTORY/MyApp.Mobile.UITests/bin/Release --token MY-TOKEN  --uitest-tools-dir $APPCENTER_SOURCE_DIRECTORY/packages/Xamarin.UITest.*/tools
当上面的脚本是我的appcenter后期生成脚本的一部分时,我得到以下错误: 错误:找不到test-cloud.exe,找不到“-uitest tools dir”指定的路径。 请检查“/Users/vsts/agent/2.141.1/work/1/s/packages/Xamarin.UITest.2.2.6/tools”是否为有效目录并包含test-cloud.exe。 最低要求版本为“2.2.0”。

我认为很多人在处理这个问题上有困难,我知道这与uitest tools dir或build dir变量有关

记住这一点,我首先尝试使用Xamarin.Android,如果成功,我将尝试Xamarin.iOS


我看到的一个线索是,Tom在那篇文章中说“我必须选择在我的app Center CI build中构建应用程序解决方案文件,而不是像通常那样简单地构建iOS项目。”,但我不太清楚如何做到这一点,或者是否与为什么AppCenter找不到我的test-cloud.exe有关。我还要说,test-cloud.exe不知何故来自Xamarin.UITest nuget,但我在我的Xamarin.Forms项目中没有看到任何test-cloud.exe文件。

感谢AppCenter代理帮助我解决了这个问题。需要2件事情,如下所示: Anvesh探员说 您好,谢谢您提供的详细信息,所以您似乎在项目中使用nuget作为PackageReference(这意味着项目中没有包文件夹,包将位于用户配置文件中)。 因此,当您尝试将测试作为app center构建的一部分运行时。然后在shell脚本中使用--uitest tools dir值,如下所示 /Users/vsts/.nuget/packages/xamarin.uitest/2.2.6/lib/tools

因此,我修改了上述脚本以添加以下内容: --uitest tools目录/Users/vsts/.nuget/packages/xamarin.uitest/2.2.6/tools\

肖恩探员说 所以我在下面添加了
msbuild$APPCENTER\u SOURCE\u目录/MyApp.Mobile.UITestProject.csproj

感谢APPCENTER代理帮助我解决了这个问题。需要2件事情,如下所示: Anvesh探员说 您好,谢谢您提供的详细信息,所以您似乎在项目中使用nuget作为PackageReference(这意味着项目中没有包文件夹,包将位于用户配置文件中)。 因此,当您尝试将测试作为app center构建的一部分运行时。然后在shell脚本中使用--uitest tools dir值,如下所示 /Users/vsts/.nuget/packages/xamarin.uitest/2.2.6/lib/tools

因此,我修改了上述脚本以添加以下内容: --uitest tools目录/Users/vsts/.nuget/packages/xamarin.uitest/2.2.6/tools\

肖恩探员说 所以我在下面添加了
msbuild$APPCENTER\u SOURCE\u DIRECTORY/MyApp.Mobile.UITestProject.csproj

这个答案有效,但非常脆弱


在使用旧项目结构的项目(使用packages.config的项目)中,test-cloud.exe不能位于
packages/Xamarin.UITest.2.X.X/tools
。对于新项目(新的.csproj格式),项目路径中没有此类文件。我发现在AppCenter上运行它的唯一方法是从NuGet软件包缓存中使用它(
/Users/vsts/.NuGet/packages/xamarin.uitest/2.X.X

这个答案可行,但它非常脆弱


在使用旧项目结构的项目(使用packages.config的项目)中,test-cloud.exe不能位于
packages/Xamarin.UITest.2.X.X/tools
。对于新项目(新的.csproj格式),项目路径中没有此类文件。我发现在AppCenter上运行它的唯一方法是从NuGet软件包缓存中使用它(
/Users/vsts/.NuGet/packages/xamarin.uitest/2.X.X

有人能告诉我如何在CI而不是android项目中构建解决方案吗?我想这可能会让我走上正确的轨道。您可以登录并单击屏幕右下角的聊天图标来联系App Center支持。我们支持Xamarin.ui在那里测试。如果你找不到聊天图标,这里有一个截图:谢谢@York Shen,我现在正在与AppCenter团队合作,希望我能很快在这里详细解释他们的解决方案。有人能告诉我如何在CI而不是android项目中构建解决方案吗?我想这可能会让我走上正确的轨道。您可以登录并单击屏幕右下角的聊天图标来联系App Center支持。我们支持Xamarin.ui在那里测试。如果你找不到聊天图标,这里有一个截图:谢谢@York Shen,我现在正在与AppCenter团队合作,希望我能很快在这里详细解释他们的解决方案。