Azure Functions をローカルでコーディングしてテストするCode and test Azure Functions locally

Azure Functions の開発やテストは、Azure Portal で行うことができますが、多くの開発者は、ローカル開発エクスペリエンスを好みます。While you're able to develop and test Azure Functions in the Azure portal, many developers prefer a local development experience. Functions では、ローカル コンピューター上でお気に入りのコード エディターや開発ツールを使用して、関数を作成し、テストすることができます。Functions makes it easy to use your favorite code editor and development tools to create and test functions on your local computer. ローカル関数はライブ Azure サービスに接続できるため、完全な Functions ランタイムを使用してローカル コンピューター上で関数をデバッグすることができます。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# (クラス ライブラリ)C# スクリプト (.csx)JavaScriptPowerShellPythonC# (class library), C# script (.csx), JavaScript, PowerShell, Python VS Code 用の Azure Functions 拡張は、VS Code に対して Functions サポートを追加します。The Azure Functions extension for VS Code adds Functions support to VS Code. Core Tools が必要です。Requires the Core Tools. Core Tools のバージョン 2.x を使用した場合は、Linux、MacOS、および Windows 上での開発がサポートされます。Supports development on Linux, MacOS, and Windows, when using version 2.x of the Core Tools. 詳細については、「Create your first function using Visual Studio Code」 (Visual Studio Code を使用して最初の関数を作成する) を参照してください。To learn more, see Create your first function using Visual Studio Code.
コマンド プロンプトまたはターミナルCommand prompt or terminal C# (クラス ライブラリ)C# スクリプト (.csx)JavaScriptPowerShellPythonC# (class library), C# script (.csx), JavaScript, PowerShell, Python Azure Functions Core Tools は、関数を作成するためのコア ランタイムとテンプレートを提供しており、これにより、ローカル開発が可能です。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. すべての環境は、ローカル Functions ランタイムとして、Core Tools を利用します。All environments rely on Core Tools for the local Functions runtime.
Visual Studio 2019Visual Studio 2019 C# (クラス ライブラリ)C# (class library) Azure Functions ツールは、Visual Studio 2019 以降のバージョンの Azure 開発ワークロードに含まれています。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. ローカル テスト用の Core Tools が含まれています。Includes the Core Tools for local testing. 詳細については、「Develop Azure Functions using Visual Studio」(Visual Studio を使用して Azure Functions を開発する) を参照してください。To learn more, see Develop Azure Functions using Visual Studio.
Maven (各種)Maven (various) JavaJava Core Tools と統合して、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. 詳細については、「Create your first function with Java and Maven」(Java および Maven を使用して、最初の関数を作成する) を参照してください。To learn more, see Create your first function with Java and Maven. EclipseIntelliJ 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.

これらの各ローカル開発環境では、関数アプリ プロジェクトを作成し、事前定義の Functions テンプレートを使用して新しい関数を作成できます。Each of these local development environments lets you create function app projects and use predefined Functions templates to create new functions. 各環境では、Core Tools が使用されています。そのため、マシン上の実際の 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 you function app project from any of these environments to Azure.

次の手順Next steps