【问题标题】:Run acceptance/smoke tests after deployment部署后运行验收/冒烟测试
【发布时间】:2015-07-30 03:58:15
【问题描述】:

我已经设置了从 Visual Studio Online Git 存储库到 Azure Web 应用程序的持续部署。

触发构建并完成部署后,在网站上运行验收/冒烟测试的最佳方式是什么?

我已经尝试过POST_DEPLOYMENT_ACTION (How to add a custom post deployment script to azure websites?),但这似乎被忽略了。

我还查看了 Kudu PostDeployment 挂钩 (https://github.com/projectkudu/kudu/wiki/Post-Deployment-Action-Hooks),它看起来过于 hacky。

顺便说一下,我正在部署一个标准的 ASP.NET 4 MVC 站点。任何帮助表示赞赏。

【问题讨论】:

    标签: asp.net asp.net-mvc git asp.net-mvc-4 azure


    【解决方案1】:

    我最终做的是自定义构建过程,在最后添加一个 RunScriptTask,它会调用我的测试。

    您可以像这样将构建参数传递给 RunScriptTask:

    "-username user@example.org -password test123 -environment " + DeploymentSettings.GetValue(Of String)("ProviderHostedDeploymentEnvironmentName")
    

    如果您从 Visual Studio -> Team Explorer -> Builds 编辑构建定义,左侧有一个名为 Process 的选项卡,用于分解构建步骤。如果单击顶部的显示详细信息,则可以选择下载 XAML 构建过程模板。您可以根据需要自定义它,然后从该文件创建一个新的构建过程模板。 (注意XAML构建过程模板文件必须提前推送到远程仓库)

    【讨论】:

    • 我觉得你发现 Kudu PostDeployment 钩子“hacky”很有趣,但上面不是 :-)
    • 事实上,微软刚刚向 Visual Studio Online 添加了一个新的build preview 部分 - 您可以使用友好的 UI 配置构建步骤,其方式与 TeamCity 类似。因此,通过这种方式在部署后执行脚本更加容易。
    【解决方案2】:

    PostDeployment 钩子有什么技巧?

    另一种方法是从 Kudu/SCM 站点订阅 PostDeployment 挂钩

    POST /api/hooks
    {
      "url": "http://www.callback.com/callback",
      "event": "PostDeployment",
      "insecure_ssl": false (set to true to ignore https certificate check, for test purposes only)
    }
    

    部署完成后,这将在指定的 URL 上为您提供如下所示的 POST:

    {
      "id": "cd5bee7181e74ea38a3522e73253f6ebb8ed72fb",
      "status": "success", (could be pending, building, deploying, failed, success)
      "author_email": "someone@somewhere.com",
      "author": "Some One",
      "message": "My fix",
      "deployer": "Some One",
      "start_time": "2013-06-06T01:24:16.5873293Z",
      "end_time": "2013-06-06T01:24:17.63342Z"
    }
    

    More info here on kudu github wiki

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-17
      • 2010-12-14
      • 1970-01-01
      • 2015-04-20
      • 2023-04-01
      相关资源
      最近更新 更多