@fuels/playwright-utils
包允许在 Fuel 上构建前端应用程序的开发人员测试其应用程序与 Fuel 钱包的交互。此包与 playwright 测试框架兼容。
如果您在 Playwright 测试中未使用任何自定义测试框架,请直接从此包中导入测试框架,并传入到 Fuel 扩展的路径。您可以手动下载扩展,也可以使用我们的 downloadFuel
函数。
// e2e.test.ts
import { test } from '@fuel-wallet/playwright-utils';
test.use({ pathToExtension: './path/to/extension' });
// OR
const fuelPathToExtension = downloadFuel(FUEL_WALLET_VERSION');
test.use({ pathToExtension: fuelPathToExtension });
如果您在 Playwright 测试中使用自定义测试框架,请按照 playwright 文档 中显示的设置 context
和 extensionId
。
FuelWalletTestHelper
FuelWalletTestHelper
是一个类,允许您与 Fuel 钱包扩展交互。
walletSetup
static async walletSetup(
context: BrowserContext,
fuelExtensionId: string,
fuelProviderUrl: string,
chainName: string,
mnemonic: string = FUEL_MNEMONIC,
password: string = FUEL_WALLET_PASSWORD
): Promise<FuelWalletTestHelper>
此函数设置您的 Fuel 钱包扩展并返回一个 FuelWalletTestHelper
实例。
walletConnect
async walletConnect(
accountNames?: string[],
connectCurrentAccount: boolean = true
): Promise<void>
此函数通过连接弹出窗口将 Fuel 钱包帐户连接到您的 Web 应用程序。如果连接弹出窗口未显示,则会引发错误。
walletApprove
async walletApprove(): Promise<void>
此函数通过交易弹出窗口批准交易。如果交易弹出窗口未显示,则会引发错误。
getWalletNotificationPage
async getWalletPopupPage(): Promise<Page>
此函数返回钱包弹出窗口页面。如果弹出窗口不存在,则会引发错误。
addAssetThroughSettings
async addAssetThroughSettings(
assetId: string,
name: string,
symbol: string,
decimals: number,
imageUrl?: string
): Promise<void>
此函数通过设置向钱包添加资产。
addAssetFromHomeBalance
async addAssetFromHomeBalance(
assetId: string,
name: string,
symbol: string,
decimals: number,
imageUrl?: string
): Promise<void>
此函数从主页向钱包添加资产。如果钱包没有任何资产,则会引发错误。
addAccount
async addAccount(): Promise<void>
此函数向钱包添加帐户。
switchAccount
async switchAccount(accountName: string): Promise<void>
此函数切换到名为 accountName
的帐户。如果没有名为 accountName
的帐户,则会引发错误。
addNetwork
async addNetwork(chainName: string, providerUrl: string): Promise<void>
此函数向钱包添加网络。如果已经存在同名的网络,则不会添加该网络。
switchNetwork
async switchNetwork(chainName: string): Promise<void>
此函数切换到名为 chainName
的网络。如果没有名为 chainName
的网络,则会引发错误。
Fuel 钱包的助记词和密码模拟变量。这些是 walletSetup
函数的默认助记词和密码变量。