在 Electron 中使用量角器

2024-02-16

我正在尝试为我运行的应用程序设置单元测试和 e2e 测试Electron http://electron.atom.io/ using 量角器 https://angular.github.io/protractor/#/。我参考了很多不同的帖子(this one https://github.com/nwjs/nw.js/issues/2229#issuecomment-53684702确实有帮助),但我仍然收到一个我不明白的错误:

Message:
  Error while waiting for Protractor to sync with the page: "angular could not be found on the window"
Stacktrace:
  undefined

My conf.js文件看起来像这样:

exports.config = {
    directConnect : true,
    seleniumAddress: 'http://localhost:4444/wd/hub',
    baseUrl:"file://home/me/workspace/testing-project/main.js",
    capabilities: {
        browserName: "chrome",
        chromeOptions: {
            binary: "/home/me/.linuxbrew/lib/node_modules/electron-prebuilt/dist/electron",
            args: ["--test-type=webdriver"]
        }
    },
    specs: ['todo-specs.js'],
    onPrepare: function(){
        browser.resetUrl = "file://";
        browser.driver.get("file://");
    }
};

考虑到上给出的文档量角器网站 https://angular.github.io/protractor/#/,我的印象是我不需要安装任何其他东西(例如 Jasmine)。
令我惊讶的是,尽管通往main.js(根据 Electron 的规范启动应用程序)是正确的,我在弹出的 Electron 窗口中看不到任何内容。
你们有人遇到过这个问题吗?你设法解决了吗?


显然,使用电子二进制文件不足以实际启动您的应用程序。然而,通过building您的应用程序的二进制文件并将其链接到您的conf.js文件作品。
我已经能够将我的文件减少为:
conf.js

exports.config = {
    seleniumAddress: 'http://localhost:4444/wd/hub',
    specs: ['test-spec.js'],
    capabilities: {
        browserName: "chrome",
        chromeOptions: {
            binary: "./dist/myAwesomeApp/myAwesomeAppBinary"
        }
    },
    onPrepare: function () {
        browser.resetUrl = "file://";
    }
};

通过这样做,就不需要描述baseUrl或使用browser.get() nor browser.driver.get()在 Electron 中启动应用程序。
但是,我宁愿不必构建应用程序二进制文件,但我认为目前不可能。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Electron 中使用量角器 的相关文章

随机推荐

  • 在 Shiny 中下载 RenderTable() 数据帧上的处理程序

    我有一个闪亮的应用程序 它采用如下所示的 csv 文件 category action 并将其输入到数据框中以仅使用 action 过滤类别 可复制的应用程序 UI library shiny shinyUI fluidPage title
  • 再次为该片段创建 ViewModel

    我在 MainFragment 中创建视图模型 Override public void onActivityCreated Nullable Bundle savedInstanceState super onActivityCreate
  • Javafx 2 图表通过手绘调整大小

    我有一个在 JavaFX 2 0 中徒手绘制 XYChart 的代码 调整图表大小时遇到 问题 当我调整大小时 我遇到了徒手绘制的翻译问题 当我调整大小时 新绘图最初看起来超出了比例 但经过一点 图表移动 后 绘图它会自行修复 我该如何改进
  • 带取消功能的VBA密码输入

    我一直在使用 Daniel Klann 编写的标准密码文本框 http www ozgrid com forum showthread php t 72794 http www ozgrid com forum showthread php
  • 重命名包名称后出现“找不到符号 R”错误

    重命名我的项目包名称 使用重构 后 我收到此错误 Error 7 44 error cannot find symbol class R 我的全部R用法无效 我尝试手动修复它 但它对我不起作用 Invalidate chases Resta
  • Next.js 中未定义 localstorage

    我正在尝试将应用程序从 React 移至 Next 在 React 中我没有收到此代码的错误 let authTokens setAuthTokens useState gt localStorage getItem authTokens
  • MongoDB TTL过期检查的更改周期

    关于基于TTL索引的文档过期MongoDB 文档 https docs mongodb com manual core index ttl timing of the delete operation says 删除过期文档的后台任务每 6
  • 选项卡切换事件可用于 Google Chrome 扩展吗?

    作为 Google Chrome 扩展 是否可以监听选项卡切换 也就是说 在标签切换刚刚发生时收到通知 I want to make an extension that in fullscreen when switching tabs w
  • 如何使用 localstorage / ajax jquery 获取从第一页到第二页的单选按钮值

    目前正在处理本地存储 在第一页中 如果用户选择第二页面板中的第一个单选按钮 则必须隐藏两个单选按钮 如果用户选择单选按钮 则第二页验证中的一个文本字段不应发生 我不知道如何使用 localStorage 或 ajax 哪一个是最好的 当我看
  • Github 自述文件中的 .gif 水平居中

    我正在尝试将 gif 居中 这是 markdown 代码 Demo demo gif 上面的代码将我的 gif 对齐到左侧 见下图 所以 我尝试将 markdown 放入其中 p 像这样的标签 但它不起作用 p p align center
  • 如何在clickhouse中根据日期和时间段选择数据

    我想通过两者过滤一些数据yyyymmdd 日期 和hhmmss 时间 但是clickhouse不支持time类型 所以我选择datetime将它们结合起来 但如何做这样的事情 这是代码dolphindb 它支持second类型来表示hhmm
  • svnrdump 转储和 svnadmin 转储之间的区别

    我需要 svn 存储库的转储 我找到了两个解决方案 svnrdump dump And svnadmin dump svnrdump dump是相同的svnadmin dump 如果不是 这两个命令有什么区别 svnrdump生成相同的转储
  • UWP ListView DataTemplate 绑定到项目而不是属性

    如何将数据模板中的项目绑定到项目本身 而不是该项目的属性 我有一个将项目作为模型的用户控件 鉴于这些模型 public class Car public string Name get set public Color color get
  • QImage/QPixmap 大小限制?

    是否有任何已知的尺寸 空间限制QPixmap and or QImage记录的对象 我没有找到任何与此相关的有用信息 我目前在 OSX 和 Windows 上使用 Qt 4 7 3 我特别感兴趣的是 宽度 高度限制 限制取决于颜色格式 32
  • UTF-8 和 ISO-8859-1 有什么区别? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 有什么区别UTF 8 https en wikipedia org wiki UTF 8 and ISO 8859 1 https e
  • JSF:commandLink 作为 outputFormat 的参数

    我正在国际化一些 JSF 文件 因此正在外部化字符串 以及使用占位符的字符串连接 我对 JSF 的经验很少 今天和昨天 所以如果我的问题有一个明显的答案 请原谅 我一直在成功地使用 h outputFormat 标记 和 f param 标
  • 用户窗体根据屏幕分辨率调整大小

    我有一个 Excel 用户表单 我想在打开时调整大小以适应屏幕分辨率 我通过得到高度和宽度Application Height and Application Width 通常使用这两个参数和以下代码 应该可以解决问题 Me Top App
  • 以编程方式最大化窗口并防止用户更改窗口状态

    如何以编程方式最大化窗口 以便窗口一旦打开就无法调整大小 达到最大化状态 例如 最大化 Internet Explorer 并查看它 我将 FormWindowState 属性设置为 this WindowState FormWindowS
  • 检测视图中的任何触摸(iPhone SDK)

    我目前正在使用 void touchesBegan NSSet touches withEvent UIEvent event void touchesEnded NSSet touches withEvent UIEvent event
  • 在 Electron 中使用量角器

    我正在尝试为我运行的应用程序设置单元测试和 e2e 测试Electron http electron atom io using 量角器 https angular github io protractor 我参考了很多不同的帖子 this