適用于 JavaScript 的 Azure LoadTest 用戶端程式庫 - 1.0.0 版
此套件包含同型 SDK, (會在 Azure LoadTest 用戶端的 Node.js 和瀏覽器) 中執行。
LoadTest 用戶端可讓您存取 LoadTest 資源及其狀態作業。
| 原始程式碼套件 (NPM) | API 參考檔 | 樣品
開始使用
目前支援的環境
- Node.js 的 LTS 版本
- 最新版的 Safari、Chrome、Edge 和 Firefox。
如需詳細資訊,請參閱我們的支援原則。
必要條件
安裝 @azure/arm-loadtesting
套件
使用 npm
安裝適用于 JavaScript 的 Azure LoadTest 用戶端程式庫:
npm install @azure/arm-loadtesting
建立和驗證 LoadTestClient
若要建立用戶端物件來存取 Azure LoadTest API,您需要 endpoint
Azure LoadTest 資源的 和 credential
。 Azure LoadTest 用戶端可以使用 Azure Active Directory 認證進行驗證。
您可以在 Azure入口網站中找到 Azure LoadTest 資源的端點。
您可以使用 來自@azure/身分 識別程式庫或 現有 AAD 權杖的認證,向 Azure Active Directory 進行驗證。
若要使用如下所示的 DefaultAzureCredential 提供者,或其他隨附于 Azure SDK 的認證提供者,請安裝 @azure/identity
套件:
npm install @azure/identity
您也必須 註冊新的 AAD 應用程式,並將 適當的角色指派給服務主體,以授與 Azure LoadTest 的存取權 (注意:這類 "Owner"
角色不會授與必要的許可權) 。
將 AAD 應用程式的用戶端識別碼、租使用者識別碼和用戶端密碼的值設定為環境變數: AZURE_CLIENT_ID
、、 AZURE_TENANT_ID
AZURE_CLIENT_SECRET
。
如需如何建立 Azure AD 應用程式的詳細資訊,請參閱 本指南。
const { LoadTestClient } = require("@azure/arm-loadtesting");
const { DefaultAzureCredential } = require("@azure/identity");
// For client-side applications running in the browser, use InteractiveBrowserCredential instead of DefaultAzureCredential. See https://aka.ms/azsdk/js/identity/examples for more details.
const subscriptionId = "00000000-0000-0000-0000-000000000000";
const client = new LoadTestClient(new DefaultAzureCredential(), subscriptionId);
// For client-side applications running in the browser, use this code instead:
// const credential = new InteractiveBrowserCredential({
// tenantId: "<YOUR_TENANT_ID>",
// clientId: "<YOUR_CLIENT_ID>"
// });
// const client = new LoadTestClient(credential, subscriptionId);
建立 Azure 負載測試資源
建立新的 Azure 負載測試資源。
loadTestResourceCreatePayload = {
location: "westus2"
};
const resource = await client.loadTests.beginCreateOrUpdateAndWait(
"sample-rg",
"sample-loadtesting-resource",
loadTestResourceCreatePayload
);
console.log(resource);
使用受控識別和客戶管理的金鑰加密,建立新的 Azure Load Testing 資源。
loadTestResourceCreatePayload = {
location: "westus2",
tags: { team: "testing" },
identity: {
type: 'SystemAssigned, UserAssigned',
userAssignedIdentities: {
'/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sample-rg/providers/microsoft.managedidentity/userassignedidentities/identity1': {}
}
},
encryption: {
identity: {
type: 'UserAssigned',
resourceId: '/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sample-rg/providers/microsoft.managedidentity/userassignedidentities/identity1'
},
keyUrl: 'https://sample-kv.vault.azure.net/keys/cmkkey/2d1ccd5c50234ea2a0858fe148b69cde'
}
};
const resource = await client.loadTests.beginCreateOrUpdateAndWait(
"sample-rg",
"sample-loadtesting-resource",
loadTestResourceCreatePayload
);
console.log(resource);
取得 Azure 負載測試資源
let resourceName = 'sample-loadtesting-resource';
let resourceGroupName = 'sample-rg';
const resource = await client.loadTests.get(
resourceGroupName,
resourceName
);
console.log(resource);
更新 Azure 負載測試資源
loadTestResourcePatchPayload = {
tags: { team: "testing-dev" },
identity: {
type: 'SystemAssigned, UserAssigned',
userAssignedIdentities: {
// removing a user-assigned managed identity by assigning the value in the payload as null
'/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sample-rg/providers/microsoft.managedidentity/userassignedidentities/identity1': null,
'/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sample-rg/providers/microsoft.managedidentity/userassignedidentities/identity2': {}
}
},
encryption: {
// use system-assigned managed identity for CMK encryption
identity: {
type: 'SystemAssigned',
resourceId: null
},
keyUrl: 'https://sample-kv.vault.azure.net/keys/cmkkey/2d1ccd5c50234ea2a0858fe148b69cde'
}
};
const resource = await client.loadTests.beginUpdateAndWait(
"sample-rg",
"sample-loadtesting-resource",
loadTestResourcePatchPayload
);
console.log(resource);
刪除 Azure 負載測試資源
let resourceName = 'sample-loadtesting-resource';
let resourceGroupName = 'sample-rg';
const result = await client.loadTests.beginDeleteAndWait(
resourceGroupName,
resourceName
);
JavaScript 套件組合
若要在瀏覽器中使用此用戶端程式庫,您必須先使用套件組合器。 如需如何執行這項操作的詳細資訊,請參閱我們的 統合檔。
重要概念
LoadTestClient
LoadTestClient
是使用 Azure LoadTest 用戶端程式庫的開發人員的主要介面。 探索此用戶端物件上的方法,以瞭解您可以存取之 Azure LoadTest 服務的不同功能。
疑難排解
記錄
啟用記錄有助於找出失敗的相關實用資訊。 若要查看 HTTP 的要求和回應記錄,請將 AZURE_LOG_LEVEL
環境變數設定為 info
。 或者,您可以在 @azure/logger
中呼叫 setLogLevel
,以在執行階段啟用記錄:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
如需如何啟用記錄的詳細指示,可參閱 @azure/logger 套件文件。
下一步
如需如何使用此程式庫的詳細範例,請參閱 範例 目錄。
參與
如果您希望向此程式庫投稿,請參閱投稿指南,深入瞭解如何組建與測試程式碼。