.NET 8下Xamarin UI Test上传App Center遇netstandard加载异常
解决方案
1. 升级App Center CLI到最新版本
旧版本CLI对.NET 8 UITest的支持可能存在缺陷,先执行更新命令:
npm update -g appcenter-cli
2. 用dotnet publish生成完整依赖的测试程序集
本地构建可能未复制全所有依赖文件,改用发布命令生成包含全部必要组件的文件夹:
dotnet publish YourUITestProject.csproj -c Release -f net8.0 -r win-x64 --self-contained false
之后使用该发布目录下的测试程序集执行上传:
appcenter test run uitest --app "你的应用名称/ID" --devices "你的设备集" --app-path "path/to/your/app.apk" --test-assembly "path/to/YourUITest/bin/Release/net8.0/win-x64/publish/YourUITest.dll" --framework net8.0
3. 调整UITest项目的csproj配置
在项目文件中添加以下配置,确保依赖项被正确复制:
<PropertyGroup> <TargetFramework>net8.0</TargetFramework> <RuntimeIdentifier>win-x64</RuntimeIdentifier> <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies> <PublishSingleFile>false</PublishSingleFile> </PropertyGroup>
同时移除对NETStandard.Library的手动引用,.NET 8无需该包,手动引用可能引发版本冲突。
4. 确认Xamarin.UITest包版本
确保使用支持.NET 8的Xamarin.UITest版本(至少4.0.0及以上),在NuGet包管理器中更新至最新稳定版。
5. 手动复制缺失程序集到输出目录
若以上方法无效,可手动找到netstandard.dll(通常位于C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.x目录),复制到UITest项目的bin/Release/net8.0目录后再执行上传命令。
内容的提问来源于stack exchange,提问作者Ieuan Griffiths
相关产品推荐
相关产品推荐

