TFS 2018和AppCenter测试

问题描述 投票:0回答:2

我是CI / CD的新手,在互联网上找不到有关如何使用TFS 2018的AppCenter Test的任何信息。我​​在TFS中有我的Xamarin项目,但我想在AppCenter Test的设备云中测试它们。

MS的文档中有几个文档使它看起来像是可能的但是对于新手来说,它们给出了关于如何实现它的ZERO信息。 HERE就是一个例子。如果您查看顶部,此文档与TFS 2018相关。

tfs visual-studio-app-center visual-studio-app-center-test
2个回答
0
投票

在Azure管道中,您可以使用YAMLclassic editor来定义管道。但是,YFSL版本在TFS 2018中尚不支持。

因此,您需要使用经典编辑器将App Center Test任务添加到管道中,然后参考文档中的Arguments来定义任务。


0
投票

以下是我为实现这一目标所做的工作。不知道它是否正确,但是嘿,它有效!

Xamarin.UITest

如果您不执行以下步骤,您将在本地运行测试,不会发生任何事情,它们会立即退出。

首先转到工具>选项>测试>常规>活动解决方案,然后取消选中For improved performance, only use test adapters in test assembly folder or as specified in runsettings file

public class AppInitializer
    {
        public static IApp StartApp(Platform platform)
        {
            if (platform == Platform.Android)
            {
                return ConfigureApp.Android
                    // You may need to adjust the following relative path based on where you created your UITest project
                    .ApkFile(@"..\..\..\<AppName>\<AppName>.Android\bin\Release\<App Package Name>.apk")
                    // Uncomment if you are running locally and you want VS to launch/install app
                    //.PreferIdeSettings()
                    .StartApp();
            }
            return ConfigureApp.iOS.StartApp();
        }
    }

不要像MS文档那样添加对Android和iOS项目的引用。这将引导您走上无用的故障排除时间

在开发窗口框中部署代理。请遵循以下说明:https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/v2-windows?view=azure-devops

TFS 2018 Configuration

  1. 在TFS中,单击进入项目的存储库
  2. 点击“构建和发布”
  3. 右上角点击“+新”
  4. 点击“继续”
  5. 向下滚动并单击“Xamarin.Android”
  6. 在下一个屏幕上将代理队列设置为您创建的任何内容,可能是默认值

我的构建任务列表

  • Nuget工具安装程序
  • .NET核心
  • 掘金
  • XA Marin.Android
  • 的MSBuild
  • Android签名
  • 节点工具安装程序
  • 掘金
  • App Center测试

这是我的详细构建步骤

Nuget工具安装程序

  • 使用Nuget
  • version of nuget to install4.9.3(这是我注意到我的VS正在使用的)
  • 所有其他默认值

.NET核心

  • 命令:restore
  • 项目之路:**/*.csproj
  • 所有其他默认值

掘金

  • 命令:custom
  • 命令和参数:restore -MsbuildPath "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin"
  • 所有其他默认值

XA Marin.Android

  • 项目:**/*Droid*.csproj
  • 目标:(空)
  • 输出目录:$(build.binariesdirectory)\$(BuildConfiguration)
  • 配置:$(BuildConfiguration)
  • MSBuild:启用Specify Location
  • MSBuild地点:C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin
  • JDK选项,JDK 8 x64
  • 所有其他默认值

的MSBuild

  • 项目:(适合这个以匹配你的uitest项目):**/*UITest*.csproj
  • MSBuild版本:最新版本
  • 平台:(空)
  • 配置:$(BuildConfiguration)
  • MSBuild参数:/p:OutputPath="$(build.binariesdirectory)\$(BuildConfiguration)\test-assembly"
  • 所有其他默认值

Android签名

  • APK文件:$(build.binariesdirectory)\$(BuildConfiguration)\*.apk
  • 检查登录APK并输入您的信息
  • Jarsigner论点:-verbose -sigalg MD5withRSA -digestalg SHA1
  • 检查Zipalign
  • Zipalign位置:(空)
  • 所有其他默认值

节点工具安装程序

  • 版本规格:(选择您系统上已有的任何版本)10.11.0
  • 所有其他默认值

注意:在下一步之前,创建一个名为XamarinUITestVer的新变量,并将该值设置为要用于要安装的Xamarin.UITest Nuget包的任何值。在我的情况下,我设置的值是:2.2.7

掘金

  • 命令:custom
  • 命令和参数(参见上面的注释):install Xamarin.UITest -Version $(XamarinUITestVer) -OutputDirectory "$(Agent.BuildDirectory)\Nuget"
  • 所有其他默认值

App Center测试

  • 二进制应用程序文件路径:$(build.binariesdirectory)\$(BuildConfiguration)\*.apk
  • 文物目录:$(Build.ArtifactStagingDirectory)\AppCenterTest
  • 检查:'准备测试'
  • 测试框架:Xamarin UI Test
  • 建立目录:$(build.binariesdirectory)\$(BuildConfiguration)\test-assembly
  • 存储文件:(空)
  • 店铺密码:(空)
  • 关键别名:(空)
  • 密码:(空)
  • 测试工具目录:$(Agent.BuildDirectory)\Nuget\Xamarin.UITest.$(XamarinUITestVer)\tools\
  • 签名信息:(空)
  • 附加选项:(空)
  • 检查:Run Tests
  • 身份验证方法:App Center Connection
  • App Center连接:(创建新连接)
  • App Slug:通过“几乎”在AppCenter中创建测试来获取此信息。从AppCenter中的应用程序创建一个New Test Run,选择设备,选择Next并选择Xamarin.UITest并点击Next。在下面,你会看到--app字符串,这是你用于这个领域。
  • 设备:通过“几乎”在AppCenter中创建测试来获得此功能。从AppCenter中的应用程序创建一个New Test Run,选择设备,选择Next并选择Xamarin.UITest并点击Next。在下面,你会看到--devices字符串,这是你用于这个领域。
  • 所有其他默认值
© www.soinside.com 2019 - 2024. All rights reserved.