问题标签 [ember-testing]
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.
ember.js - 由于 PhantomJS 语法错误,Ember.js 测试失败
在 Ember 应用程序中运行测试时出现此错误。显然,有一个语法错误Unexpected token ','
(
注意上面的第一个错误,它说global failure
然后报告了意外的逗号标记。之后,所有剩余的测试都会失败,要么是因为它们无法导入存在的文件,要么是因为testResolver
未设置,或者其他原因。
问题是一切都在浏览器中正常运行。看来这与 PhantomJS 在某些地方的语法更加严格有关。但是错误消息中没有指示该流氓逗号的位置。
有人可以给我一些关于如何找到这个逗号或以某种方式解决这个错误的提示吗?提前致谢。
ember.js - 测试时如何从组件中获取属性?
当组件没有模板时如何检查组件的属性值?在应用程序中,组件被扩展并以这种方式提供模板。
我无法使用this.render(hbs'{{#my-component foo=foo2}}{{foo}}{{/my-component}}');
,因为 foo 没有产生。直接访问组件也是不可能的。
ember.js - Ember 助手单元测试 - 注入或模拟服务
我使用的是 Ember 1.13(还不是 2.x),我需要能够运行辅助单元测试。我的助手有一行:
它以丑陋的方式注入服务,因为在 Ember 2.x 之前,助手不是“真实”对象,不能执行以下操作:
当我尝试为帮助程序运行简单的单元测试时,我得到:
在这种情况下,如何导入/注入/模拟全局应用程序命名空间?还是有其他方法可以解决这个问题?
ember.js - 实例初始化程序单元测试因“存储未定义”而失败
生成示例应用程序后:
使用以下文件:
模型/测试数据.js
路线/index.js
实例初始化器/preload.js
模板/index.hbs
适配器/application.js
ember serve
运行应用程序并显示预加载数据,但进入实例初始化程序/tests
的默认单元测试失败并出现错误。preload
store is undefined
完整的错误信息:
如何初始化应用程序的存储以便它可以在单元测试中使用?
编辑 - tests/unit/instance-initializers/preload-test.js
有无尝试needs: [ 'service:store' ]
(尽管它建议如果 Ember-Data 在页面上,您不需要这样做- 我也尝试在单元测试和实例初始化程序中导入)。
版本:
ember.js - Ember CLI:尝试注册未知工厂:`controller:object`
我的 ember-cli 版本是 0.2.3。尝试运行测试时出现以下错误。
关于可能导致这种情况的任何想法?看起来像一个 ember-cli 内部问题。
我实际上正在使用v2.3.0-beta.2
Ember CLI。当您启动它时,出于某种原因,它会在终端上显示 v0.2.3。
Ember 版本是 2.0。
我对触发这个的模型进行了单元测试。测试使用moduleFor
而不是moduleForModel
因为我的应用程序不使用 Ember Data。
jquery - 如何在 ember 集成测试中聚焦/模糊组件?
如何在测试 Ember.js 组件时触发焦点和模糊事件?
this.$().focus();
或者this.$('input').focus();
似乎工作但在 phantomjs 和 chrome 中表现不同。
也this.$().blur();
或this.$().focusout();
似乎无法同时使用 phantomjs 和 chrome。
jquery - jquery 命令在使用 ember.js 中的 hbs 渲染的测试中不起作用
我一直致力于在 Ember.js 2.5 中编写自己的组件测试。我目前正在尝试在按下按钮时测试属性更改。测试可以正常运行并且不会抛出任何错误,但测试中的 jquery 命令似乎不起作用。例如this.$('button').click();
我已经按照此处的指南https://guides.emberjs.com/v2.5.0/testing/testing-components/进行操作,甚至按照他们所做的完全一样 - 相同的组件名称和所有内容,但仍然没有。没有抛出任何错误,jquery 根本不起作用。
由于组件测试使用 htmlbars-inline-precompile 插件来呈现组件,因此我确保遵循该 repo 上的所有说明。Babel 已更新,并且 bower 已安装所有必要的先决条件。
这是请求的测试代码
unit-testing - 将服务注入 Ember 测试
我已经阅读并关注了用于单元测试的 EmberJS 服务注入(Ember QUnit),但我仍然无法弄清楚问题出在哪里。
我想测试我的身份验证是否按预期工作。我已经为 ember-simple-auth 编写了身份验证器,并且会话被注入到路由中。代码本身没有任何问题。
现在,我想创建一个测试来测试我的身份验证是否按预期工作。所以我希望直接使用 authManager 。
当我打印's'的内容时,我得到''。如果我将其更改为其他内容,则响应未定义,正如预期的那样。问题是当我想获取属性“isAuthenticated”或运行“invalidate()”时。在这些情况下,我得到了“未定义”。我究竟做错了什么?
ember.js - Ember 插件测试挂在 Chrome 和 Firefox 的“等待跑步者”上
即使我在下面提到了 Chrome testem.json
,也没有任何反应:
如果只写了“Chrome”,控制台会显示“Waiting for runners...”消息并挂起。
package.json
,bower.json
和testem.json
我的其他项目都是一样的,所有其他的都在 Chrome 上运行。
javascript - 如何在 ember.js 中使用自定义测试助手
我生成了一个自定义测试助手:
这是删除了它的代码:
我无法让它在组件测试中实际工作。我试过直接使用它:
这会引发ReferenceError: integrationFor is not defined
错误。
我也尝试过导入它:
根据文档,这似乎不正确。
这些文档在最新版本(> 2.4.x)中没有相应的部分,所以我不确定这是否是处理注册测试助手的正确方法,或者我是否做错了。