TestCafe with Electron:确定应用程序在 Windows 桌面上是否可见
TestCafe with Electron: Determine if app is visible on Windows desktop
我们的 Electron 应用程序开始最小化到 Windows 托盘通知区域,即在桌面上不可见。
如果我尝试通过 methods such as this or as 获取可见性信息,请始终检查 'visible' 属性 returns true。
例如,下面始终returns true 应用程序是最小化到通知区域还是在桌面上可见:
if(await Selector('button', { visibilityCheck: true }).visible)
console.log("VISIBLE");
else
console.log("NOT VISIBLE");
作为万圣节,我也曾尝试检查 'focused' 属性 但也总是 returns 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());
});
我检查了您项目中的代码,它按预期工作。
我们的 Electron 应用程序开始最小化到 Windows 托盘通知区域,即在桌面上不可见。
如果我尝试通过 methods such as this or as
例如,下面始终returns true 应用程序是最小化到通知区域还是在桌面上可见:
if(await Selector('button', { visibilityCheck: true }).visible)
console.log("VISIBLE");
else
console.log("NOT VISIBLE");
作为万圣节,我也曾尝试检查 'focused' 属性 但也总是 returns 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());
});
我检查了您项目中的代码,它按预期工作。