Visual Studio Team Services - 单元测试设置 public repo

Visual Studio Team Services - settings for unit testing public repo

目前我运行宁 Visual Studio Team Services 有一个包含我的项目的私有代码存储库。我有持续集成设置,可以获取新代码、构建它、运行s 单元测试,然后将所有内容发布到 Azure 网站上。效果很好。

现在开源代码的时机已经成熟。我想将所有内容移至 GitHub,但仍使用 VS Team Services 进行构建、测试和部署。我正在整理 public 存储库中我不想要的东西(应用程序设置、连接字符串)。对于 webapp 本身,它相当简单,我已将所有 'private' 内容移至 Azure 门户并从 web.config 中删除。设置会自动覆盖,我可以签入不包含任何敏感数据的 web.config。

但是后来我来到了我的单元测试项目。嗯,现在怎么办?我不想像现在这样检查我的设置文件,但测试依赖于这些设置。那么,确保测试可以 运行 而无需在 public 存储库中公开我的设置的好做法是什么?

事先致歉,因为这个问题可能已经得到解答,但我可以找到任何真正描述这个特定问题的内容。

您可以签入不含任何敏感数据的 web.config 文件,然后使用 Replace Tokens 任务在构建期间使用有效信息填充 web.config 文件。用于填充 web.config 文件的字符串存储在构建定义变量中,因此 public 人无法使用它。