Cypress Typescript:如何存储可在每次拆卸后使用的变量?
发布时间:2022-05-01 00:49:25 447
相关标签: # 数据
我有一些测试用例,在开始时将数据存储在变量中,以便在整个测试中使用。它在测试过程中运行良好,可以调用到测试的最后一步,直到拆卸之前,但是当我尝试在测试中使用它时@afterEach
在每次测试结束时运行以执行任何全局清理命令的teardown,该变量显示为空,不再存储任何内容。变量似乎意外重置。
我想在拆卸中运行它的原因是确保即使测试用例在完成之前失败,也能访问存储的数据(从而确保在拆卸中收集数据)。如何让变量在Cypress测试中正确存储?
我曾尝试在类中使用静态变量,但这似乎不起作用。
在每个测试用例中,一个方法存储用户的数据,并将其锁定在会话中,以便在从会话中释放之前,其他并行运行的测试无法使用该数据。
class myUser {
static user;
public setUser(params: object): void {
myUser.user = setAndLockUser(params);
}
public releaseLockedUser(): void {
if (myUser.user == undefined) return;
releaseTheUserLock(myUser.user);
}
}
在测试用例结束时,我希望确保删除用户的会话,这样用户就不再被锁定在会话中,并且可以用于尚未运行的测试用例。所以我们加上releaseUser
到afterEach
方法:
afterEach(() => {
myUser.releaseLockedUser();
});
这就是存储变量无法识别的问题所在。在整个测试过程中,成功存储了用户变量,但在每次拆卸后,该变量为空,无法正确清除会话。
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报