我们的 Electron 应用程序开始最小化到 Windows 托盘通知区域,即在桌面上不可见。
如果我尝试通过 methods such as this 获取可见性信息或 described here ,检查“可见”属性总是返回 true。
例如,无论应用是最小化到通知区域还是在桌面上可见,下面总是返回 true:
if(await Selector('button', { visibilityCheck: true }).visible)
console.log("VISIBLE");
else
console.log("NOT VISIBLE");
万岁,我也曾尝试检查“focused”属性,但无论应用程序在桌面上的可见性如何,它也始终返回 true(至少在“body”上) .
有谁知道通过 TestCafe 确定应用程序是否在 Windows 桌面上可见的可靠方法?
谢谢 米
最佳答案
可以使用 Electron 的 API 来完成。详情请引用以下文章:https://electronjs.org/docs/api/browser-window#winisvisible .
测试代码如下:
import { ClientFunction } from 'testcafe';
fixture `Electron page`
.page ``;
const isDocumentHidden = ClientFunction(() => {
const remote = require('electron').remote;
const win = remote.getCurrentWindow();
return !win.isVisible();
});
test('is hidden', async t => {
console.log(await isDocumentHidden());
});
我检查了您项目中的代码,它按预期工作。
关于testing - 带有 Electron 的 TestCafe : Determine if app is visible on Windows desktop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58369151/