Xamarin.UITest test-cloud.exe上传错误
将 Xamarin.UITest 测试运行提交App Center测试时,该命令使用 appcenter test-cloud.exe Xamarin.UITest NuGet 包中的 。 如果命令找不到该可执行文件,或者它找到的版本与用于生成测试的版本不同,则它不会上传测试运行,并且你收到 appcenter 错误。
该命令使用启发式方法查找test-cloud.exe。 某些项目或 NuGet 设置可能会导致找不到它并报告错误,或找到错误的项目或 appcenter Cannot find test-cloud.exe NuGet 设置并建议 UITest.dll and the tools are incompatible 。
解决方案
重新生成
重新生成始终是故障排除的良好开始。
如果在更改 Xamarin.UITest 包版本后尚未重新生成 UITest 项目,请清理、重新生成并重试 appcenter test run uitest ... 命令。
手动指定 UITest 工具目录
备注
用于上传的 Xamarin.UITest 版本必须与用于生成测试的版本完全匹配。
如果这不能解决问题,则解决方案是向命令添加 选项,指向具有 --uitest-tools-dir tools 正确 的目录 test-cloud.exe 。
但是,test-cloud.exe?
test-cloud.exe 在 Xamarin.UITest 包中。 若要查找该包,请在">资源管理器"中检查 Xamarin.UITest Visual Studio路径设置。
Visual Studio for Mac
引用> Xamarin.UITest > Xamarin.UITest (Ctrl+单击或右键单击) >属性>路径
Visual Studio
解决方案资源管理器 >引用 > Xamarin.UITest (右键单击) >">属性"
此路径将指向 Xamarin.UITest.dll ,其外观 (Mac) :
/Users/user/.../PROJECT/packages/Xamarin.UITest.3.0.7/lib/net45/Xamarin.UITest.dll
对应的 tools 文件夹 --uitest-tools-dir 为:
/Users/user/.../PROJECT/packages/Xamarin.UITest.3.0.7/tools/
请确保此文件夹存在且具有 test-cloud.exe 。
将此代码添加到测试运行命令, (换行符)
--uitest-tools-dir "/Users/user/.../PROJECT/packages/Xamarin.UITest.3.0.7/tools/"
可以改为根据命令的运行位置使用相对 appcenter 路径。
远程生成服务
如果包安装在生成计算机上,但不知道在何处且无法使用 Visual Studio 检查位置,可以使用暴力破解方法查找计算机上的文件 (可能需要更改起始文件夹或驱动器以搜索 test-cloud.exe) :
dir d:\test-cloud.exe/s (Windows) find / -name test-cloud.exe (Mac)
如果在项目生成之前未安装 NuGet 包,可以在生成期间执行一个暴力破解方法以查找 Xamarin.UITest 包。
如果所有其他操作都失败,可以从 NuGet 手动下载 Xamarin.UITest 包,将其解压缩,test-cloud.exe添加到项目中的已知位置。