我正在使用命令行中的Web組件測試器在我的Polymer組件上運行基於燈具的測試。測試成功Chrome(v.47),但在Firefox中失敗(v.42)。問題在於,在我的Polymer組件中的某些更改觀察器功能中,預期的數據正在Chrome中收到,但在Firefox中爲空,導致後者中的測試失敗。以下是必要的代碼:web-component-tester:測試在Chrome中成功,但在Firefox中失敗
聚合物組分: 聚合物({ 是: '組件名',
properties: {
data: {
type: Array,
observer: '_dataChanged'
},
_dataChanged: function() {
process(this.data) // this line
...
},
...
在Chrome中, 'this.data' 在上述的 「這條線」 的值是非空的,無論在html中是否通過,這使得我的測試用例成功。 但是在Firefox中,從事件接收的'this.data'的值是一個空數組[],導致所述測試任何想法爲什麼是這樣的情況?
我也試過在事件監聽器中包裝我的測試套件fo r'WebComponentsReady'事件,儘管Web組件測試程序已確保只有在此類事件觸發後套件纔會啓動。這種方法在Chrome中仍然有效,但在Firefox中仍然失敗。
嗨狗,我試過這個,但它仍然沒有在Firefox中產生非空數組。在Chrome中,測試仍然成功。謝謝,壽。 – geddevrel
@gedestech,你能提供一個更大的代碼範例嗎?例如什麼是在元素上設置數據屬性,測試是什麼樣的等等。 – Dogs
通過重新安排腳本中的動作並在「WebComponentsReady」事件中顯式地執行測試套件,解決了該問題,測試人員應該照顧那種興奮。我將在代碼模式中更詳細地回答這個問題。 – geddevrel