gpt4 book ai didi

testing - 如何配置 TeamCity 以动态构建项目而不是导出项目?

转载 作者:行者123 更新时间:2023-11-28 20:57:32 36 4
gpt4 key购买 nike

我有一个测试解决方案 (TestSolutionA),其中包含一个测试项目(TestProjectA:包含使用 NUnit 进行的系统测试)并引用另一个现有项目 (ProjectB),因为我的测试项目需要读取该项目的一些类例如 EmailHelper。

TFS 中的文件夹结构:

*Root
**Tests
***References
***TestSolutionA
****TestProjectA
**ClassLibraries
***ProjectB

References 文件夹包含 TestProjectA 使用的程序集,例如 NUnit.dll 等。

现在我已经配置了 TeamCity,以便它构建 TestSolutionA 并运行 TestProjectA 的测试。这意味着当构建 TestSolutionA 时,该解决方案中引用的所有文件和文件夹都将 check out 到“ check out 目录”,然后构建解决方案。

问题是这个测试解决方案的构建速度很慢,因为每次它都必须 check out /导出 ProjectB 的所有文件和文件夹到 TeamCity Server 并重建它们,而只需要 ProjectB 的 dll 而不是全部其中的文件/类。

当涉及到更多的外部项目时,问题会更明显。

在测试项目需要引用外部项目的情况下,是否有更好的解决方案来加快构建速度?例如即时构建程序集,而不是 check out 它们/将它们导出到 TeamCity 服务器。

不确定是否可能。

希望问题清楚。

谢谢,

最佳答案

您需要做的是为 ProjectB 创建一个单独的 TeamCity 构建配置,用于构建 DLL 并将其作为工件发布。然后,您可以配置 TestSolution 构建配置,使其具有对 ProjectB DLL 的工件依赖性。这样,您的 TestSolution 构建配置根本就不必为 ProjectB 提取任何源代码。

TeamCity 文档中的一些有用链接是:

http://confluence.jetbrains.net/display/TCD65/Build+Artifact

http://confluence.jetbrains.net/display/TCD65/Artifact+Dependencies

关于testing - 如何配置 TeamCity 以动态构建项目而不是导出项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9078421/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com