Как программировать и тестировать Функции Azure в локальной средеCode and test Azure Functions locally

Хотя вы можете разрабатывать и тестировать Функции Azure на портал Azure, многие разработчики предпочитают локальную среду разработки.While you're able to develop and test Azure Functions in the Azure portal, many developers prefer a local development experience. Решение "Функции" позволяет с легкостью использовать предпочитаемый редактор кода и средства разработки для создания и тестирования функций на локальном компьютере.Functions makes it easy to use your favorite code editor and development tools to create and test functions on your local computer. Локальные функции можно подключать к действующим службам Azure, а их отладку можно выполнять на локальном компьютере с помощью полной среды выполнения решения "Функции".Your local functions can connect to live Azure services, and you can debug them on your local computer using the full Functions runtime.

Локальные среды разработкиLocal development environments

Способ разработки функций на локальном компьютере зависит от настроек языка и инструментария.The way in which you develop functions on your local computer depends on your language and tooling preferences. В нижеприведенной таблице указаны среды, которые поддерживают локальную разработку:The environments in the following table support local development:

СредаEnvironment LanguagesLanguages ОПИСАНИЕDescription
Visual Studio CodeVisual Studio Code C# (библиотека классов), скрипт (. CSX), JavaScript C# , PowerShell, Python C# (class library), C# script (.csx), JavaScript, PowerShell, Python Расширение Функций Azure для VS Code добавляет поддержку средства "Функции" в VS Code.The Azure Functions extension for VS Code adds Functions support to VS Code. Требуются основные инструменты.Requires the Core Tools. Поддерживает разработку на платформах Linux, MacOS и Windows при использовании версии 2.x основных инструментов.Supports development on Linux, MacOS, and Windows, when using version 2.x of the Core Tools. Для получения дополнительных сведений см. статью Создание функции в Azure с помощью Visual Studio Code.To learn more, see Create your first function using Visual Studio Code.
Командная строка или терминалCommand prompt or terminal C# (библиотека классов), скрипт (. CSX), JavaScript C# , PowerShell, Python C# (class library), C# script (.csx), JavaScript, PowerShell, Python Основные инструменты службы "Функции Azure" предоставляет основную среду выполнения и шаблоны для создания функций, которые обеспечивают локальную разработку.Azure Functions Core Tools provides the core runtime and templates for creating functions, which enable local development. Версия 2.x поддерживает разработку в Linux, MacOS и Windows.Version 2.x supports development on Linux, MacOS, and Windows. Во всех средах применяют основные инструменты для локальной среды выполнения средства "Функции".All environments rely on Core Tools for the local Functions runtime.
Visual Studio 2019Visual Studio 2019 C# (библиотека классов)C# (class library) Средства функций Azure включены в рабочую нагрузку разработки Azure Visual Studio 2019 и более поздних версий.The Azure Functions tools are included in the Azure development workload of Visual Studio 2019 and later versions. Позволяет компилировать функции в библиотеке классов и публиковать библиотеки DLL в Azure.Lets you compile functions in a class library and publish the .dll to Azure. Включает основные инструменты для локального тестирования.Includes the Core Tools for local testing. Дополнительные сведения см. в статье Инструменты Функций Azure для Visual Studio.To learn more, see Develop Azure Functions using Visual Studio.
Maven (различные)Maven (various) JavaJava Интегрируется с основными инструментами и обеспечивает возможность разработки функций Java.Integrates with Core Tools to enable development of Java functions. Версия 2.x поддерживает разработку в Linux, MacOS и Windows.Version 2.x supports development on Linux, MacOS, and Windows. Дополнительные сведения см. в статье Создание первой функции с помощью Java и Maven.To learn more, see Create your first function with Java and Maven. Также поддерживает разработку с помощью Eclipse и IntelliJ IDEA.Also supports development using Eclipse and IntelliJ IDEA

Важно!

Не следует смешивать локальную разработку и разработку с помощью портала разработки в одном приложении-функции.Do not mix local development with portal development in the same function app. При создании и публикации функций из локального проекта не следует пытаться хранить или изменять код проекта на портале.When you create and publish functions from a local project, you should not try to maintain or modify project code in the portal.

Каждая из этих локальных сред разработки позволяет создавать проекты приложений-функций и использовать предопределенные шаблоны решения "Функции" для создания новых функций.Each of these local development environments lets you create function app projects and use predefined Functions templates to create new functions. Каждая из них использует основные инструменты, чтобы вы могли тестировать и отлаживать функции в реальной среде выполнения решения "Функции" на своем компьютере как и любое другое приложение.Each uses the Core Tools so that you can test and debug your functions against the real Functions runtime on your own machine just as you would any other app. Вы также можете опубликовать проект приложения функции из любой из этих сред в Azure.You can also publish your function app project from any of these environments to Azure.

Дополнительная информацияNext steps