Azure Functions メニューからも HTTP Trigger 関数に対する Azure Load Testing が実行出来るようになりました
いわさです。
Azure には JMeter ベースのフルマネージドな負荷テストサービスがあります。
以前のアップデートで Azure App Service の機能としてこの Azure Load Testing が統合されて、App Service メニュー上から実行出来るようになっています。
先日のアップデートで Azure Functions でも同様にサービス側のメニューに Azure Load Testing が統合されました。
これによって HTTP Trigger 関数を作成時にすぐにパフォーマンステストを実行することが出来ます。
使い方
使い方としては Azure Functions のポータル画面メニューから負荷テスト内容を直接設定するような形になるのですが、前提として評価対象は HTTP Trigger 関数である必要があります。
なので、まずは HTTP Trigger で関数を作成しましょう。
テスト作成
で、関数作成後にパフォーマンスの Load Testing (プレビュー) メニューから Azure Load Testing 関係の機能にアクセスすることが出来ます。
この関数が関連付けされたテスト一覧を確認することが出来ます。
このメニューからテストを開始するわけなのですが、Azure Load Testing リソースがまだなければリソースの新規作成から開始することも可能です。
今回は Load Testing リソースが既に存在する状態だったので、既存リソースを選択してテストだけ新規作成を行います。
テスト作成時にはまずテスト対象のエンドポイントを指定する必要があるので、最低限 Azure Functions の対象 HTTP Trigger 関数を指定する必要があります。
さらにその上で HTTP リクエストに必要なパラメータやヘッダー・メソッドなどを細かく指定することが出来る他、関数実行のための API キーの指定も可能です。便利。
今回は先程の HTTP Trigger 関数を指定して次のように構成しました。
テスト作成が完了すると、初回実行が自動で行われます。
テストが開始されると、Azure Functions ポータルのテスト一覧画面に作成・実行したテストが表示されるようになりました。
先ほどは Azure Functions の画面でしたが、Azure Load Testing ポータル側でももちろん実行したテストを確認することが出来ます。
こちらでは関数以外にテストも含まれているので他の実行結果も含まれる形となっていますが、実体としては通常の Azure Load Testing によるテストであることがわかります。
さいごに
本日は Azure Functions メニューからも HTTP Trigger 関数に対する Azure Load Testing が実行出来るようになったので確認してみました。
今回のような単純な関数だと負荷テストの意味はあまりありませんが、例えば外部サービスやデータストアと連携しているとか、ノイジーネイバーの挙動とか、負荷が発生した時に期待どおり動作するか確認したい時に利用出来そうです。