好的,所以我欣然承认在持续集成方面我是新手。
话虽如此,我正在尝试设置一个 CC.NET 环境来教育自己,但我无法找到设置自动构建部分所需的信息。
据我了解,在 C# 中,由 VS 2005 和转发生成的 .csproj 文件是有效的 MSBuild 文件。也就是说,我已经能够使用 .csproj 文件将 MSBuild 任务集成到 CC.NET 中,但是我对此有一些问题:
- 这里发生了很多事情,我不确定我是否真的需要在自动构建环境中。
- 我没有创建这个文件。我不明白,这让我害怕。(巧合编程)
- 大多数正在发生的事情似乎都是通过抽象的
$(MSBuildToolsPath)\Microsoft.CSharp.targets
- 作为 1、2 和 3 的结果,修改文件以包含 MbUnit 之类的内容似乎很复杂,而且比它需要的更困难。我唯一真正的选择是将它包含在该
AfterBuild
部分中,这对我来说似乎有点像 hack。
所以,有几个问题要问 CC.NET 人员、MSBuild 人员和 MbUnit 人员。
- 在使用 MSBuild 时,是否建议使用 VS 生成的 .csproj 文件作为构建文件?还是我应该创建自己的?
- MbUnit 测试应该是 MSBuild 文件还是 CC.NET 文件的一部分?我的研究似乎表明它们属于 MSBuild 文件。如果是这种情况,除了 .csproj 文件之外,我是否要创建一个新的 MSBuild .proj 文件并将其签入 CVS?还是 MbUnit 任务成为我的 .csproj 文件的一部分?
- 与问题 2 类似。如果我将 MbUnit 测试添加到 MSBuild 文件并最终使用 .csproj 文件,那么
Target Name="AfterBuild"
真的是添加该信息的部分吗?不应该有一个Target Name="Test"
部分吗?使用 VS 生成的 .csproj 文件似乎阻止了第二种选择。
我知道那里有很多东西,但是我在网上找到的大部分内容都假定我对这些我没有的主题有一定程度的熟悉——除非我弄错了,否则这些东西的学习曲线是根本不是曲线,而是阶跃函数。:)
编辑 1:我更新了文本,使其更加简洁,并解决了我在答案中遇到的一些挥之不去的问题。