跳至主要内容

CleanupTotal 服务

wdio-cleanuptotal-service 是一个第三方软件包,更多信息请参见GitHub | npm

使用 webdriver.iocleanup-total 服务,您可以轻松确保在每次测试后进行正确的清理。该服务提供了一种系统化的方式,可以在创建实体后立即将其标记为删除。当测试涉及创建复杂结构(例如带有投资计划和存款的银行账户)时,这尤其有用。如果没有正确的清理,尝试删除账户可能会导致错误,例如由于账户不为空而被拒绝。但是,使用cleanup-total,实体将按正确的顺序删除,确保测试自行清理并且不会相互干扰。

安装

安装此模块作为(开发)依赖项的最简单方法是使用以下命令

npm install wdio-cleanuptotal-service --save-dev

用法

将 wdio-cleanuptotal-service 添加到您的 wdio.conf.js

exports.config = {
// ... other options

services: ['cleanuptotal']

// ... other options
};

或使用服务选项

exports.config = {
// ... other options

services: [
[
'cleanuptotal',
{
// Use a custom logger function to write messages to the test report
customLoggerMethod: console.log(), // TODO: replace with your own logger function if needed

// Only write to the log when an error occurs to reduce clutter
logErrorsOnly: false, // TODO: consider changing to 'true' if you have too many messages in the report
}
]
]

// ... other options
};

在测试中使用

您可以在任何需要的地方导入cleanuptotal服务,无论是在您的测试文件中还是任何其他类中。

import { cleanuptotal } from "wdio-cleanuptotal-service";

it("should keep things tidy", () => {
// ...

// Create an account and add it to the cleanup list for deletion after the test
const accountId = createAccount("John Blow");
cleanupTotal.addCleanup(async () => {
await deleteAccount(accountId);
});

// Add an investment plan to the account and add it to the cleanup list
addInvestmentPlan(accountId, "ModRisk");
cleanupTotal.addCleanup(async () => {
await removeInvestmentPlan(accountId);
});

// Deposit funds into the account and add it to the cleanup list
deposit(accountId, 1000000);
cleanupTotal.addCleanup(async () => {
await undoDeposit(accountId);
});

// ...

});

// Note that the actual cleanup code will be executed after the test is complete

TypeScript 支持

此插件支持 TypeScript。

欢迎!我如何帮助您?

WebdriverIO AI Copilot