问题标签 [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-testing - 如何在 ember-testing 和模拟 fb 图形数据中模拟 facebook 登录
我正在为我的 ember 应用程序编写测试。我安装了 ember-cli-mirage
我的验收测试流程包括 facebook 登录
问题是我的测试不等待 facebook 登录弹出并抛出错误无法找到“login_form_label”
ember.js - Ember 测试:为什么要使用 Assert.?
我看到了很多使用的示例(包括 ember-cli 生成的测试),assert.function()
但我可以按原样使用该函数,所以我做错了什么,或者示例只是显示了不是真的必要的限定符?
例如,这些中的任何一个都可以在新生成的单元测试中工作:
assert.expect(1);
expect(1);
如果第二个有效,为什么还要做第一个?
unit-testing - 具有计算属性的简单 Ember 组件测试
我知道这应该很简单,我只是没有做正确的事情,还没有找到可以模仿的例子,我想我也不完全理解应该在Ember.run()
这是我的组件代码:
我的组件模板:
在我的测试中:
我有三个这样的测试,一个针对三种不同状态中的每一个。如果我只有一个测试,我不需要为了通过测试而将包裹component.set()
起来。Ember.run()
但是,如果我有所有三个测试,我会得到这个错误:
您已经打开了测试模式,它禁用了运行循环的自动运行。您将需要在运行中包装任何具有异步副作用的代码
但是,如果我确实将每个component.set()
调用都放在运行循环中,那么我的测试会由于equal
断言期望 1 并得到 0 而失败。我确信这是由于我缺乏理解,但要么set()
不是正在运行,否则组件会在断言中重新呈现,因此不知道 status 属性已设置。我已经阅读了一个小时的文档和谷歌搜索,但还没有找到解决方案(更有利的是,一个解释)。
ember.js - emberjs - 位置类型为“哈希”的路由在测试中不起作用
我将路由位置类型设置为散列,并且一切都在浏览器中运行,但是当我尝试运行测试时,似乎 ember 忽略了散列后 URL 中的所有内容。
例如,以下 URL 在浏览器中有效:
我在控制台中看到以下内容
我到了正确的页面。
但是当我在具有相同 URL 的 ember 测试中调用 visit() 时,我得到 404 并在控制台中看到:
例如,ember 在散列之前停止(未找到是默认 url,我必须捕获所有错误的 url)。
为什么会这样?我如何解决它?
谢谢,
ember.js - 我可以对基于全局的 Ember 应用程序使用 Ember-CLI 测试吗?
我们有一个不使用 Ember-CLI 的 Ember 应用程序。该指南说使用 Ember-CLI 进行测试。
我们可以使用 Ember-CLI 为应用程序的某些部分编写单元测试吗?这需要迁移到 ES6 模块还是我们可以使用基于全局的源代码进行测试?
ember.js - 包含组件的组件的集成测试
我有一个使用另一个组件的组件。但它不起作用,因为第一个组件的测试表明它缺少一个helper
被调用的curit-select
.
0.10
您可以添加一个moduleForComponentneeds to the
函数,但现在这样做会强制它进入单元测试模式。(见)
您不需要通过需要依赖:。这样做会强制测试进入单元模式。
组件 1:
组件 2:
现在我正在尝试为第一个组件编写集成测试:
javascript - ember 测试通过 chrome,而不是 phantomjs
我对通过 chrome的插件进行了测试,但在 phantomjs 中失败。
这似乎是一个类似于this question的问题。但是,我在那里尝试了解决方案,但它对我不起作用。
代码都可以在上面链接的公共仓库中找到。失败显示在 github 上失败的 travis 构建中。关于如何更好地诊断和修复的任何想法?
编辑——实际的错误信息
更新
根据@knownasilya 的提示,我尝试强制使用可选的 babel 转换es6.spec.symbols
: in ember-cli-build.js
:
然而——没有运气。不过,它看起来确实像一个 es6 转译问题。我没有成功通过选项吗?还有其他提示吗?如果您不想查看存储库,我很乐意发布代码片段。:)
更新 2
还包括:
作品!
现在我要说:
我也在为此寻找一个 polyfill...但是查看ember-collection
似乎具有类似配置的 testem 配置,我注意到 phantomjs 测试已关闭!现在的问题是:requestAnimationFrame
在 phantomjs 中进行测试的最佳方法是什么?
javascript - 测试模式下的 Ember 运行循环
我正在使用https://github.com/ride/ember-stripe-service附加组件,一切都运行良好Ember 1.10.1
,但由于Ember 1.11.0
Ember 的运行循环在 E2E 测试中开始崩溃,说我们正在尝试访问一个被破坏的对象,我一直在尝试修复它,但我不能,所以我做了一个 PR https://github.com/ride/ember-stripe-service/pull/32复制错误,tests/dummy
但tests/integration
他们都不知道如何修复它,拜托帮助。
我们认为这与 Stripe.js ( https://js.stripe.com/v2/ ) 有关,因为它们在脚本加载到浏览器中时嵌入了一个 iframe。
ember.js - Phantomjs 2.0.1 在 /assets/test-loader.js 找不到变量定义
首先,我想说我遇到了这里描述的完全相同的问题。但问题是,答案不适合我,我安装了 babel,将其更新到最新版本,没有任何改变。另外,我卸载了我的 phantomjs 1.9.8 并安装了 2.0.1,我认为这是个好主意,但同样没有结果。有谁知道为什么会发生这种情况?
ember.js - 在测试 ember 组件集成测试时将服务存根
我正在查看 ember 测试指南,它说当您想要删除服务时执行以下操作
问题是我Uncaught TypeError: this.register is not a function
在使用此代码时得到了一个。所以我假设之前的每个this.register('service:location-service', locationStub);
都是导致问题的原因。
任何人都知道我该如何解决这个问题,或者有什么更合适的方法来删除服务?这段代码目前在 Ember 的文档中。