Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.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测试之间交替使用明暗模式_Javascript_Local Storage_React Hooks_Cypress - Fatal编程技术网

Javascript 应用程序在Cypress测试之间交替使用明暗模式

Javascript 应用程序在Cypress测试之间交替使用明暗模式,javascript,local-storage,react-hooks,cypress,Javascript,Local Storage,React Hooks,Cypress,我有一个使用挂钩的React应用程序。它在实时应用程序中工作得非常好,但是当运行我的Cypress E2E测试时,应用程序在每次测试之间在亮模式和暗模式之间来回切换(每隔Itblock处于亮模式),即使每次测试后我cy.clearLocalStorage()。我的操作系统被设置为暗模式,所以我希望所有测试在默认情况下都在暗模式下运行 我的测试是这样设置的: description('Application',()=>{ 在每个之前(()=>{ cy.visit('/'); }); 它('做某事'

我有一个使用挂钩的React应用程序。它在实时应用程序中工作得非常好,但是当运行我的Cypress E2E测试时,应用程序在每次测试之间在亮模式和暗模式之间来回切换(每隔
It
block处于亮模式),即使每次测试后我
cy.clearLocalStorage()
。我的操作系统被设置为暗模式,所以我希望所有测试在默认情况下都在暗模式下运行

我的测试是这样设置的:

description('Application',()=>{
在每个之前(()=>{
cy.visit('/');
});
它('做某事',()=>{
//这将在黑暗模式下运行
});
它('做别的事',()=>{
//这将在灯光模式下运行
});})
它('做另一件事',()=>{
//返回黑暗模式
});
});

我注意到,在亮模式下运行的测试将
darkMode
localStorage
变量设置为
null
,而在暗模式下运行的测试将其设置为
true
。这可能是Cypress持久化的方式中的一个bug吗
localStorage
?或者可能是
useDarkMode
hook?

Cypress没有保存本地存储(按设计),请阅读文档以了解解释可能是存根本地存储
cy.visit('/',{onBeforeLoad(win){cy.stub(win,'localStorage').returns(…)}})
Cypress没有持久化localStorage(按设计),请阅读文档以获得解释可能是stub localStorage
cy.visit('/',{onBeforeLoad(win){cy.stub(win,'localStorage')。返回(…)})