【问题标题】:Recommendations on runsettings file for connection string override关于连接字符串覆盖的运行设置文件的建议
【发布时间】:2019-04-23 14:36:38
【问题描述】:

我有几个使用数据库执行测试的 C# 测试项目。我想创建一个运行设置文件,以便在使用 Azure DevOps 时在测试执行时覆盖到此数据库的连接字符串。

我还没有成功正确地写入运行设置文件。

您对如何做到这一点有任何提示或建议吗?

【问题讨论】:

  • 你的连接字符串在哪里?在App.config 文件中?
  • @FelipeOriani 在我的 app.config 文件中是的

标签: c# visual-studio azure-devops devops runsettings


【解决方案1】:

您可以转换配置文件。例如,如果你有一个 app.config 文件存储了一个连接字符串来执行测试,你可以用一个有效的数据库替换这个连接字符串并运行测试。

有一个名为 Config Transformation 的构建步骤,您可以将其添加到 Azure DevOps 管道中。实际上,当我将应用程序发布到不同的环境时,我会使用此构建步骤(因此我们将设置和连接字符串替换为适当的值)。您可以在构建管道上使用它。

假设您有app.config 文件,那么您可以创建一个变量所在的文件,例如app.tests.config,并在Config Transformation 步骤中定义它,例如:

它基于配置文件的转换。看看这个就知道怎么配置了:

https://docs.microsoft.com/pt-br/aspnet/web-forms/overview/deployment/visual-studio-web-deployment/web-config-transformations

我不确定您的场景,但如果您使用单元测试,最好的执行方法是使用 Mocks/Stubs(模拟数据库)而不是访问数据库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-25
    • 2012-04-08
    • 1970-01-01
    • 1970-01-01
    • 2018-02-26
    • 2019-02-02
    • 1970-01-01
    相关资源
    最近更新 更多