TFS 2018和AppCenter测试

时间:2019-04-02 15:14:32

标签: tfs visual-studio-app-center visual-studio-app-center-test

我是CI / CD的新手,无法在Internet上找到有关如何在TFS 2018中使用AppCenter Test的任何信息。我​​在TFS中拥有Xamarin项目,但我想在AppCenter的设备云中对其进行测试测试。

在MS的文档上有一些文档使它看起来像是可能的,但是对于新手,他们提供了有关如何实现它的零信息。 HERE是一个示例。如果您在顶部查找该文档,则与TFS 2018相关。

2 个答案:

答案 0 :(得分:0)

Azure管道中,您可以使用enter image description hereYAML定义管道。但是TFS 2018尚不支持YAML构建。

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

答案 1 :(得分: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();
        }
    }
  

请勿添加对您的Android和iOS项目(例如MS)的引用   文档说。这将带您走上数小时无用的故障排除之路

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

TFS 2018配置

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

我的构建任务列表

  • Nuget工具安装程序
  • .NET Core
  • Nuget
  • Xamarin.Android
  • MSBuild
  • Android签名
  • 节点工具安装程序
  • Nuget
  • App Center测试
  

这是我的详细构建步骤

Nuget工具安装程序

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

.NET Core

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

Nuget

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

Xamarin.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*.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
  • 邮政编码位置:(空)
  • 所有其他默认值

节点工具安装程序

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

注意:在下一步之前,请创建一个新变量,名为   XamarinUITestVer并将该值设置为您要使用的任何值   要安装的Xamarin.UITest Nuget软件包。就我而言   我设置的值是:2.2.7

Nuget

  • 命令: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字符串,这是您在此字段中使用的字符串。
  • 所有其他默认值