我无法弄清楚如何为涉及观察者的一些方法编写单元测试。我有一个像这样设置的Iron-pages元素
<iron-pages>
selected="[[page]]"
attr-for-selected="name"
fallback-selection="manhattan-transit-view404"
role="main">
<manhattan-transit-home name="home"></manhattan-transit-home>
<manhattan-transit-map name="map"></manhattan-transit-map>
<manhattan-transit-route name="route"></manhattan-transit-route>
<manhattan-transit-report name="report"></manhattan-transit-report>
<manhattan-transit-view404 name="view404"></manhattan-transit-view404>
</iron-pages>
它包含可通过点击其尊重的按钮以允许用户更改网页而可访问的网页的名称。在脚本节点
中有一个像这样设置的观察者properties: {
page: {
type: String,
reflectToAttribute: true,
observer: '_pageChanged'
}
},
observers: [
'_routePageChanged(routeData.page)'
],
_routePageChanged: function(page) {
this.page = page || 'home';
},
_pageChanged: function(page) {
// Load page import on demand. Show 404 page if fails
var resolvedPageUrl = this.resolveUrl('manhattan-transit-' + page + '.html');
this.importHref(resolvedPageUrl, null, this._showPage404, true);
},
_showPage404: function() {
this.page = 'view404';
}
我是测试的新手,我认为我需要测试_routePageChanged,_pageChanged和_show404函数,并且不知道如何测试这些。我知道我需要确保页面根据点击的信息正确切换,我可能想要模拟各种点击但是测试,但不知道如何去做。