我使用Approval Tests和WatiN來測試我的ASP.NET MVC2頁面的集成。 WatiN啓動IE打擊給定的URL,然後給我一個變量的瀏覽器的HTML響應。然後,批准測試允許我將html響應與「批准」版本的html響應進行比較。這個系統工作得很好,除了某些東西(無論是IE還是JQuery)將一個意外的屬性添加到我的元素中。爲什麼我的FORM元素有一個隨機的JQuery屬性?
這裏的形式標籤的副本從IE的HTML響應:
<FORM method=post action=/Account/LogOn jQuery1314030136323="2">
通知的jQuery1314...
屬性的形式的元素。它始終設置爲「2」,但屬性的名稱始終不同(jQuery ###########)。由於每次都有所不同,我的批准測試失敗。我需要在html輸出上運行一個正則表達式,並用蠻力去除param,找到一種方法來使每個屬性的名稱相同,或者完全刪除。有任何想法嗎?
我故意不使用ASP.NET標記,因爲我真的認爲這是特定於IE或JQuery的。
能否請你給我一個如何jQuery.expando設置的東西爲例:
如下您可以更改的expando線像'jquery'? –
添加到我的答案。 –
這是一個很好的答案,但我寧願不修改我的jQuery源代碼。相反,我選擇了在我的html響應中運行正則表達式,並手動刪除以'jquery'開頭的屬性。這個問題幫助我實現了這個目標:http://stackoverflow.com/questions/7151269/how-to-strip-out-one-common-attribute-from-every-form-element-on-the-page/7151545#7151545 –