问题标签 [spectron]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
789 浏览

javascript - 如何使用 Spectron 访问客户端窗口 javascript 全局变量

我正在尝试使用 Spectron 测试 Electron 应用程序。但我无法测试客户端窗口 javascript 全局变量。这是我的简化代码。请帮我。谢谢。

索引.html

脚本.js

规范.js

0 投票
0 回答
469 浏览

javascript - 用 spectron 模拟阻力

我想使用光谱/电子模拟元素内的阻力。我尝试了两种方法:

我还尝试了上述的许多不同版本/组合(包括例如movementX和movementY)。我不能使用操作 api(我的驱动程序还没有实现它)。

使用我所有的方法,什么都没有发生(也没有错误)。有没有办法实现拖动(不是拖放,它只是在一个元素内)?

0 投票
2 回答
1496 浏览

python - 使用 Python + Selenium 进行基于 Electron 的应用程序测试

有很多关于使用 Spectron 测试使用 Electron 构建的应用程序的文档。

由于我有很多用 Python 编写的实用程序,我想知道是否有任何方法可以使用 Python-Selenium 来测试在 Electron 中构建的应用程序。

从一些在线资源中,我发现有几个人能够做到(虽然不是我目前使用的最新版本)。我能够使用下面的代码启动应用程序,但调用 webdriver.Chrome() 是一个阻塞调用,我从来没有得到驱动程序实例:

谢谢。

0 投票
1 回答
1944 浏览

jestjs - Spectron 与 Jest 测试基本窗口打开不工作

我正在使用 React 开发一个 Electron 桌面应用程序。尝试为代码的电子端设置测试。我有一个 Launch.test.js 文件,我正在尝试用 Jest 测试 Spectron。当我运行测试文件时,它会抛出错误。无法修复错误。

我的文件结构是这样的

Launch.test.js 的代码如下所示 -

});

当我运行它时,我收到以下错误。

0 投票
2 回答
6820 浏览

javascript - 错误:超过 30000 毫秒的超时。对于异步测试和钩子,确保调用了“done()”;如果返回一个 Promise,确保它解决

我正在尝试使用光谱仪编写电子测试。

这是我的代码。

但是,当我运行npm test我得到的错误是

我需要向现有的钩子添加任何功能吗?

0 投票
1 回答
256 浏览

java - 如何获取 Spectron 测试结果并将其传递给外部测试(例如,Ucumber-Junit 测试)

我有一个应用程序,它由两部分组成 1. 后端,Java Spring Boot 应用程序 2. Electron/Angular 前端 我想一起测试后端和前端。最好启动 JUnit 黄瓜测试,从其中一个黄瓜案例中调用 spectron 测试,然后将 spectron 测试结果返回给黄瓜。从spectron“外部”获得一些测试结果是真的吗?

0 投票
1 回答
915 浏览

testing - 如何使用 Spectron 测试电子浏览器

我正在尝试测试我公司的 Electron 构建浏览器https://github.com/maidsafe/safe_browser但遇到了一些挑战,我正在寻求支持/指导。

经过大量研究,我似乎基本上有两个选择——使用 Spectron 作为测试框架或使用 Selenium 和 Chromedriver。我找到了一种通过使用 Chrome 选项并提供浏览器可执行文件的路径来使用 Selenium 的自定义二进制文件的方法,并认为我是赢家,但我遇到了一个主要问题 - 我可以启动浏览器,但我尝试了任何交互(使用我之前使用 Selenium Java 学习的“典型”测试自动化方法)失败:

例如WebElement secret = driver.findElement(By.cssSelector("#acc-secret"));

行不通-我得到了

org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"css selector","selector":"#acc-secret"}

我还尝试通过 Id 和 xpath 与元素进行交互——这些都不起作用。我尝试了findElement具有不同屏幕元素的不同方法,但无法正常工作。

所以,我暂时放弃了这种方法——如果这种方法可行,那将是理想的,因为我的自动化经验在于 Selenium Java。不过没关系,我很高兴学习新东西,所以我研究了 Spectron。

但是,我发现有关 Spectron 的文档/博客文章难以消化——我是一名测试人员而不是一名开发人员,虽然我在技术上胜任,但我发现这里的假设知识水平比我目前拥有的要高。另外,这一切似乎都是我一无所知的Javascript。(这就是为什么我希望能够走我熟悉的 Selenium 路线。)

我想做的是创建一套独立于浏览器代码库的测试,我们(QA 团队)可以在其中构建例如页面对象模型和相关的测试用例。

任何想法/建议/指导将不胜感激,因为我觉得我目前还没有真正走远!

0 投票
1 回答
1307 浏览

typescript - 使用自定义 main.js 文件运行电子应用程序。Electron 宁愿启动默认的 main.js 文件

我有带有 main.js 的电子应用程序,其中包含

和 main2.js

两个 main.js 几乎相同,它们应该显示不同的页面。我想用 main.js 默认启动应用程序,并提供一个使用 main2.js 启动应用程序的选项。在我的 package.json 中我介绍了

现在当我启动应用程序时,npm run main2我仍然得到页面 index1 并且应用程序没有记录任何内容 在此处输入图像描述

0 投票
0 回答
273 浏览

javascript - 由 mocha 运行时从其他 ts 文件导入时出现意外的令牌导入

我有一个 Util 类,我在其中为我的测试类保存了一些信息

我有以下结构

在此处输入图像描述

我想要做的是导入 TestUtilsimport { TestUtils } from "../helpers/TestUtils"

但后来我得到了错误

我的 tsconfig.ts 文件包含

我已更改为app.e2e-spec.jsapp.e2e-spec.ts但仍然出现此错误。

0 投票
1 回答
917 浏览

typescript - 在 Spectron 中选择和上传测试文件

我必须为包含选择文件对话框的电子 GUI 编写测试。我无权访问 GUI 的实现。

我写过

我得到一个控制台输出

值为空

我是光谱仪的新手。我错过了什么吗?

更新:选择文件元素的 DOM 是