gpt4 book ai didi

javascript - Emberjs 与 konacha 的集成测试

转载 作者:行者123 更新时间:2023-11-30 10:33:07 25 4
gpt4 key购买 nike

在 Ember.js 1.0.rc1 上使用 Konacha 进行集成测试时遇到问题。我的问题是所有测试都在呈现任何 View 之前运行。有没有一种方法可以知道何时渲染完所有内容而无需手动超时?

规范助手:

//=require sinon
//=require jquery
//=require jquery_ujs
//=require twitter/bootstrap
//=require handlebars
//=require ember
//=require ember-data
//=require_self
//=require icarium

window.lookupController = (name) ->
Icarium.__container__.lookup('controller:' + name)

window.currentPath = ->
lookupController('application').get('currentPath')

Ember.testing = true

Ember.run ->
window.Icarium = Ember.Application.create()

测试:

//=require spec_helper

describe "user login", ->
before (done) ->
Ember.run ->
Icarium.set 'ready', ->
done()
Icarium.initialize()

afterEach ->
Ember.run ->
Icarium.reset()

it "routes to login", ->
Ember.run ->
currentPath().should.eq "login"

it "renders the login form", ->
$('input[type=password]').should.exist

最佳答案

也许将 Konacha 的重置函数设置为 noop 就可以解决问题:

Konacha.reset = ->

默认情况下,它会在每次测试前清除 body elmenet。您可以在 Jo Liss 的幻灯片中找到这个和其他有用的提示:http://www.slideshare.net/jo_liss/testing-ember-apps

关于javascript - Emberjs 与 konacha 的集成测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15679065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com