有人知道如何检查Ember是否处于测试模式吗?
我在编写Ember中的接受测试时遇到了一些困难,因为应用中的一些jQuery动画在Ember的运行循环之外异步运行,并且直到测试已经完成后才会完成。使用andThen(...)
等等等待助手不能等待动画完成,因为它们在运行循环之外。
实际上我不需要测试动画,只需要测试动画完成后DOM状态即可,所以为了简化问题,我想在接受测试期间禁用动画。因此我需要能够检查Ember是否处于测试模式。
我正在使用Ember版本1.10.1
有人知道如何检查Ember是否处于测试模式吗?
我在编写Ember中的接受测试时遇到了一些困难,因为应用中的一些jQuery动画在Ember的运行循环之外异步运行,并且直到测试已经完成后才会完成。使用andThen(...)
等等等待助手不能等待动画完成,因为它们在运行循环之外。
实际上我不需要测试动画,只需要测试动画完成后DOM状态即可,所以为了简化问题,我想在接受测试期间禁用动画。因此我需要能够检查Ember是否处于测试模式。
我正在使用Ember版本1.10.1
没关系,这很简单,只需要使用Ember.testing
就行了。在测试模式下,它将被设置为真值,但在其他情况下则未定义,因此我无法立即在Chrome控制台中找到它。
if (Ember.testing) { // 不要动画 }
http://emberjs.com/api/classes/Ember.Test.html#property_testing
import ENV from 'app/config/environment';
myFunc() {
const isTesting = ENV.environment === ‘test’;
if (isTesting) {...};
}
请查看https://github.com/emberjs/ember-qunit/issues/297#issuecomment-352408048。