Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在每次测试之前检查Cypress中是否设置了localStorage以避免重新登录_Javascript_Cypress - Fatal编程技术网

Javascript 在每次测试之前检查Cypress中是否设置了localStorage以避免重新登录

Javascript 在每次测试之前检查Cypress中是否设置了localStorage以避免重新登录,javascript,cypress,Javascript,Cypress,我在我想要运行的应用程序上有一系列的测试。我希望这些测试能够按顺序或单独运行(这需要登录) 目前,如果我要按顺序运行这些测试,它会在每次测试之前尝试登录,但会抛出错误,因为它找不到不包含这些字段的电子邮件/密码字段(因为/login已经有用户登录,它会重定向到/dashboard)。序列中的第一个测试用例登录到应用程序中,然后启动下一个测试用例 这是登录脚本: 类登录页{ 访问(){ cy.visit(“/login”{ failOnStatusCode:false }); } fillPla

我在我想要运行的应用程序上有一系列的测试。我希望这些测试能够按顺序或单独运行(这需要登录)

目前,如果我要按顺序运行这些测试,它会在每次测试之前尝试登录,但会抛出错误,因为它找不到不包含这些字段的电子邮件/密码字段(因为/login已经有用户登录,它会重定向到/dashboard)。序列中的第一个测试用例登录到应用程序中,然后启动下一个测试用例

这是登录脚本:

类登录页{
访问(){
cy.visit(“/login”{
failOnStatusCode:false
});
}
fillPlayerCredentials(){
赛程('playerFixture')。然后((玩家)=>{
cy.get('[data testid=loginEmailField]')。应该('be.visible')。键入(player.email);
cy.get(':第n个子(2)>.MuiFormControl根>.MuiInputBase根>.MuiInputBase输入')
.should('be.visible')
.type(播放器.密码);
});
}
登录(){
cy.get('[data testid=loginButton]')。单击();
}

}
您可以像往常一样使用本地存储:

if (!localStorage.getItem('sc-token')) {
    // do login
}

您还可以对其进行断言,以确保登录后已正确保存令牌。请参见

您可以像往常一样使用本地存储:

if (!localStorage.getItem('sc-token')) {
    // do login
}

您还可以对其进行断言,以确保登录后已正确保存令牌。请参见

我已将该语句添加到测试用例中,但它仍在尝试在每个测试用例之后登录。我使用这个方法()从commands.js保存localStorage,然后在测试中使用它们。也许它有一些我需要修改的地方?我已经将该语句添加到我的测试用例中,但是它仍然在尝试在每个测试用例之后登录。我使用这个方法()从commands.js保存localStorage,然后在测试中使用它们。也许它有我需要修改的地方?