5
這對其他人可能是顯而易見的,但我沒有通過搜索找到它,所以在這裏發佈問題和一個可能的答案。在JQueryUI小部件的QUnit測試中可見的測試
背景:使用widget factory
- 定製JQuery用戶界面窗口小部件,一些元件得到隱藏或基於其他數據/選項所示。
- 創建單元測試以驗證它們是否正確顯示/隱藏。
- 我認爲我的單元測試可以在內存中創建自己的元素,類似於this old answer。
從這個例子中剝離出來的實際控件部分:
test('show/hide', 1, function() {
var somecondition = true;
var div = $('<div/>').hide();
if (somecondition) div.show();
equal(somecondition, div.is(":visible"));
});
測試失敗,因爲jQuery始終報告div.is(":visible")
爲假。我認爲使用div.css('display') == 'none'
將是一種解決方法。不幸的是,這在Chrome而不是Firefox中起作用。