我们使用BackboneJS / Marionette作为我们的应用程序。它以前是一个普通的jQuery应用程序。目前,我可以使用区域在我的浏览器上显示HospitalName,所以我很擅长。
我还是Marionette的新人。她告诉我们,我们的老板,要加上测试。我们决定使用Karma和PhantomJS。我开始编写一个spec文件,但我无法弄清楚如何测试HospitalName是否等于" Ranjit Ravi心脏中心" DOM最终更新后。
我假设我的代码能够使用下面的spec文件在PhantomJS中更新DOM。
这是数据文件:hospital.json
{ "HospitalName" : "Ms Ranjit Ravi Heart Center" }
这是标题/ index.js
import Backbone from 'backbone';
import Module from 'marionette.component';
import Layout from './layout';
import Hospital from './hospital'; // pulls hospital.json
let PModel = Backbone.Model.extend({});
export default Module.extend({
viewClass: Layout,
initialize: function () {
this.model = new PModel(Hospital);
}
});
这是使用把手的模板文件
<div>{{HospitalName}}</div>
这是我到目前为止编写的spec文件
import Header from './header/index';
import {LayoutView} from 'backbone.marionette';
describe('Header Module', function () {
before(function () {
let header = new Header();
$('<div id="regionHeader"></div>').appendTo('body');
var HeaderView = LayoutView.extend({
el: '#content',
regions: {
region: '.regionHeader'
}
});
var headerLayout = new HeaderView();
header.showIn(headerLayout.region);
});
});