文章詳情頁
測試自動化html元素選擇器。元素ID或DataAttribute [關閉]
瀏覽:83日期:2024-04-22 08:44:46
如何解決測試自動化html元素選擇器。元素ID或DataAttribute [關閉]?
這接近于基于意見,這是應該有助于做出選擇的總結。
這是一種 常見 的和熟悉的給大家做測試自動化 的方式來定位元素通常,這是在頁面上定位元素的 最快 方法,因為硒會降低其執行速度document.getElementById(),而硒是由現代瀏覽器優化的(盡管,端到端UI測試的性能通常并不關鍵)它是每種硒語言綁定中的 內置 定位器如果您要使用Firebug或Chrome開發者工具-CSS選擇器和XPath生成工具通常會id盡可能使用元素的s 提供更強大的定位器您將構建較短的CSS選擇器和XPath表達式。例如#myid .someclass反對[automation-id=myid] .someclass。例如,如果將automation-id屬性添加到所有所需的元素,則將在某種程度上對名稱空間/作用域進行測試自動化-每個人都將僅從屬性名稱知道這是什么。意思是,您將大大減少開發人員有意更改屬性的可能性,而不是id屬性,屬性也可以并且通常也用于應用程序客戶端邏輯(請參閱此和此答案)另外,這是一些相關的線程:
使用Selenium時,是否在所有標準實踐中都添加了ID?測試中識別元素的能力勝于ID解決方法我目前在UI測試自動化的元素上放置了一些ID。這些ID僅用于測試。我應該添加數據屬性,而不是使其對將來的開發人員更具可讀性(data-testHandle=“ mybutton”),還是應該堅持使用ID。
w3.org說:
定制數據屬性旨在存儲頁面或應用程序專用的定制數據,對于這些數據,沒有更多合適的屬性或元素。
我傾向于保留ID,但是我中的某些人認為將來的開發人員會認為ID未被使用并刪除它們。
這里有任何最佳做法。謝謝。
標簽:
HTML
相關文章:
1. javascript - js 有什么優雅的辦法實現在同時打開的兩個標簽頁間相互通信?2. css3 - 在sublime text里, 如何讓emmet生成的帶前綴css屬性垂直對齊?3. mac連接阿里云docker集群,已經卡了2天了,求問?4. javascript - weex和node,js到底是怎樣一個關系呢?5. javascript - 一個抽獎的效果(如圖)?6. javascript - 這是什么插件能把能把cli里面的webpack打包信息格式化?7. 想找個php大神仿個網站。8. javascript - 怎樣限制同一個瀏覽器不能登錄兩個賬號9. html5和Flash對抗是什么情況?10. javascript - jquery怎么給select option一個點擊時觸發的事件,如圖 如果選擇自定義觸發一個時間?
排行榜
