# 工程功能集

> Enable support for integrated development environments, and use tools to test and analyze your project's performance.

工程功能集包含用于集成 C# 集成开发环境 (IDE)、单元测试、Code Coverage 和性能分析的包。

## 入门##getting-started

Unity 支持以下 IDE：Visual Studio（Windows、macOS）和 JetBrains Rider（Windows、macOS、Linux）。

要选择与 Unity 编辑器一起使用的 IDE，请打开[偏好](/engine/6000.0/manual/unity-editor/editor-features/preferences.md) (Preferences) 窗口，然后转到**外部工具** (External Tools) > **外部脚本编辑器** (External Script Editor)。

Unity Test Framework (UTF) 可以在编辑模式和播放模式下以及在目标平台（如独立平台、Android 和 iOS）上测试您的代码。

要在 Unity 编辑器中访问 Unity Test Framework (UTF)，请选择 **Window** > **通用** (General) > **Test Runner**。

Profile Analyzer 会对一组 Unity 性能分析器帧中的帧和标记数据进行聚合和可视化，从而帮助您了解它们的行为。您可以使用 Profile Analyzer 并排比较两组数据，从而补充 Unity 性能分析器中已有的单帧分析。

要打开 Profile Analyzer 窗口，请选择 **Window** > **分析** (Analysis) > **Profile Analyzer**。

将 Code Coverage 包与 Test Runner 结合使用可收集和呈现测试覆盖信息。在启用 Code Coverage 的情况下运行测试，查看测试运行时执行的代码行，以及测试通过还是失败。

要在 Unity 编辑器中打开 Code Coverage 窗口，请选择 **Window** > **分析** (Analysis) > **Code Coverage**。

使用 Editor Coroutines 包在编辑器中开始执行[迭代器方法](https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/yield)，这类似于在运行时处理 [MonoBehaviour](/engine/6000.0/script-reference/unity-engine/mono-behaviour.md) 脚本中的[协程](/engine/6000.0/manual/scripting/object-oriented-development/coroutines.md)的方式。

## Packages##packages

工程功能集包含以下包：

* [Visual Studio 编辑器](/engine/6000.0/manual/packages-list/packages-all/pack-safe/com-unity-ide-visualstudio.md)
* [JetBrains Rider Integration](/engine/6000.0/manual/packages-list/packages-all/pack-safe/com-unity-ide-rider.md)
* [Test Framework](/engine/6000.0/manual/packages-list/packages-all/pack-safe/com-unity-test-framework.md)
* [Profile Analyzer](/engine/6000.0/manual/packages-list/packages-all/pack-safe/com-unity-performance-profile-analyzer.md)
* [Code Coverage](/engine/6000.0/manual/packages-list/packages-all/pack-safe/com-unity-testtools-codecoverage.md)
* [Editor coroutines](/engine/6000.0/manual/packages-list/packages-all/pack-safe/com-unity-editorcoroutines.md)

## 资源##additional-resources

* [集成开发环境 (IDE) 支持](/engine/6000.0/manual/scripting/environment-and-tools/ide-support.md)
* [Unity Test Framework 概述](https://docs.unity3d.com/Packages/com.unity.test-framework@1.1/manual/index.html)
* [Profile Analyzer 概述](https://docs.unity3d.com/Packages/com.unity.performance.profile-analyzer@1.1/manual/index.html)
* [Code Coverage 概述](https://docs.unity3d.com/Packages/com.unity.testtools.codecoverage@1.1/manual/index.html)
* [Editor coroutines 概述](https://docs.unity3d.com/Packages/com.unity.editorcoroutines@0.0/manual/index.html)

## 相关论坛

* [脚本](https://forum.unity.com/forums/scripting.12/)
* [测试和自动化](https://forum.unity.com/forums/testing-automation.211/)

## 公共路线图

了解[工程](https://resources.unity.com/unity-engine-roadmap/engineering)路线图中即将推出的功能。
