问题标签 [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.

0 投票
1 回答
58 浏览

ember.js - 如何使用 ember 编写失败的测试以显示需要 pushObject(而不仅仅是 push)?

我正在寻找一种方法来证明 pushObject 是必需的(在事件触发时推动更改)。

显示这一点的最小/最简单的 qunit 测试是什么?即-它是否需要数组内的项目具有计算属性或者是否足以修改数组(并将该数组绑定到 hbs 模板)?

这里不需要 jsfiddle 只是寻找一个概念上的“我怎样才能证明这一点”

0 投票
0 回答
171 浏览

ember.js - Ember 组件测试 - 将控制器上下文传递给组件

我正在尝试对我的几个嵌套组件进行单元测试。这是在应用程序中使用时的外观。

在这个组件中,selectedCountrycountriesObj来自路由的控制器。创建测试时如何设置此上下文。这就是我的测试代码的样子

第二个测试不起作用我的上下文没有设置。这通常是如何完成的?一般来说,我对测试完全陌生,所以我可能会做一些愚蠢的事情。

这是我迄今为止在测试中得到的。

这是实际工作的组件的演示。

0 投票
1 回答
943 浏览

ember.js - 延迟测试直到 Ember.run.later 完成

我正在尝试让一些测试通过ember 插件。它工作正常,直到昨天我添加了一些稍后在运行循环中使用 Em.run.next 运行的代码。

这是我在测试中所做的。

问题是当点击被触发时,后面的函数在andThen. 到那时我所有的测试都完成了,它会抛出错误。我的印象是,然后应该等待所有异步内容完成。

这就是触发点击时我的代码的样子(点击时触发focusOut事件)

你可以看到它给出了一个错误Uncaught TypeError: Cannot read property 'has' of undefined。这是来自 focusOut 方法。到函数执行时,组件 _state 正在“销毁”并this.$()返回未定义。

我尝试了wait帮助程序,但仍然无法使测试正常工作。这通常是怎么做的。我已提取测试以在 bin 中运行。这是它的链接

0 投票
1 回答
1022 浏览

ember.js - 当我运行 ember test 并访问 /tests 结果不一致时,我该如何排除这些不同的原因?

我已经使用 ember 一个多月了,但我还没有找到解决我遇到的一些测试不一致问题的解决方案。

问题是当我从命令行运行 ember test 并在浏览器中访问 /tests 时,有时我会看到不同的测试总数。似乎使用 phantomjs 进行 ember 测试,因为测试运行器正在跳过一些测试。最重要的是,结果似乎也不一致。

例如,我有一个简单的验收测试:

当我访问 /tests 时,我的所有测试都通过了,但是当我运行 Ember 测试时,我遇到了一个失败:

提前感谢您的帮助。

0 投票
1 回答
883 浏览

ember.js - ember 事件触发顺序在应用和测试中不同

我编写了这个简单的演示组件来演示一个问题。组件代码如下

当我运行它并单击focus-out元素时,这是日志的顺序。演示链接

  1. 单击焦点容器
  2. 从外部容器集中输出
  3. 焦点设置为按钮

现在,当我尝试使用以下代码为此编写验收测试时。

日志的顺序不同。链接到演示

  1. 单击焦点容器
  2. 焦点设置为按钮
  3. 点击测试后
  4. 从外部容器集中输出

focusOut日志在最后打印,而不是在点击后日志之前。我期待日志的顺序相同,最后只有一个额外的日志(点击后)。

我不确定这是错误还是我的代码有问题。

我在执行测试时还注意到另一个问题。如果我在测试运行时专注于 chrome 开发工具,则该focusOut事件根本不会触发。

对此的一些帮助非常感谢。

0 投票
1 回答
376 浏览

unit-testing - Ember-cli 具有“需要”关系的单元测试

我正在做我的单元测试,感觉我做错了什么。我有一个有很多关系的“主要”对象

每次我对其相关项目(person, category, impact)进行单元测试时,我都必须重现needs我的“主要”对象具有的所有值。当我的位置单元测试category只关心其名称的字符串及其与“主”对象的关系时,它只是感觉不合适

我做错了什么还是有更好的方法来构建我的单元测试来处理关系?

我正在使用 ember-cli 0.1.5、ember 1.9.1 和 ember-data beta 14

0 投票
1 回答
1116 浏览

ember.js - Ember 集成测试在访问路由后挂起

我正在尝试做一个简单的集成测试,我从 ember-cli 网站上的集成示例开始。现在,当我在浏览器(localhost:4200/tests)中进行测试时,以下情况会路由到我期望的位置,但是它只是挂起并且永远不会成功或失败。

我在这里做错了什么吗?还是有不同的方法来做到这一点?

ember-cli 0.1.5 和 ember 1.9.1

编辑:

启用日志记录表明转换已完成,但 andThen 仍然永远不会解决或被拒绝。

编辑:

我想我已经缩小了范围。我有一个时钟服务,我正在注入所有控制器,但是当我根本不注入它时,我的测试通过了。我需要时钟服务提供的功能,我怎样才能仍然使用它,但让我的集成测试工作?

示例项目可以在https://github.com/RyanHirsch/ember-test-example找到。如果我删除 run.later 测试将通过。

0 投票
1 回答
132 浏览

ember.js - Ember Qunit 助手不工作

我一直在使用官方文档中的 ember 助手检查 ember qunit 测试。检查示例(不起作用)我可以看到它们使用了 js 库

但我找不到这个网址。我猜这个库包含期望和访问函数定义。所以我无法获得 qunit 测试作品。有什么地方可以下载ember helpers js库吗,官网例子有错吗?

0 投票
1 回答
2075 浏览

ember.js - PhantomJS 2.0 挂在 ember 测试中

我有一个简单的 ember-cli 应用程序。我用 运行单元测试ember test,它在 phantomJS 中运行它们。使用测试Function.prototype.bind失败,因为 phantom 1.9.x 缺少该 API 的众所周知的问题。我安装了 phantom 2.0,但现在当我运行时ember test,成功构建后,测试从未运行,它只是挂在那里,没有错误,什么都没有。

关于问题可能在这里,或者如何追踪它的任何想法?

操作系统是 Windows。

0 投票
1 回答
395 浏览

ember.js - 使验收测试顺序依赖?

有什么办法可以让测试顺序依赖,所以测试 2 在测试 1 完成之前不会开始?去 localhost:4200/tests 以不确定的方式运行它们,有时它会以正确的顺序运行并且工作正常,但有时它会乱序运行它们,这可能会导致问题,有没有办法强制特定的顺序但保留它们在单独的测试功能中,我总是可以将该测试的所有内容放在一个大测试功能中,以便顺序始终有效,但我觉得它们应该被分解成自己的功能,任何指导将不胜感激?下面的示例只是我希望订单看起来像的示例测试