文章詳情頁
測試自動化html元素選擇器元素ID或DataAttribute [關閉]
瀏覽:94日期:2024-05-17 09:26:04
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解決測試自動化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. python bottle跑起來以后,定時執行的任務為什么每次都重復(多)執行一次?2. python - 爬蟲模擬登錄后,爬取csdn后臺文章列表遇到的問題3. html5 - HTML代碼中的文字亂碼是怎么回事?4. 視頻文件不能播放,怎么辦?5. javascript - vue2如何獲取v-model變量名6. javascript - 求幫助 , ATOM不顯示界面!!!!7. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處8. javascript - 為什么在谷歌控制臺 輸出1的時候,輸出的1立馬就不見了9. javascript - angular使從elastichearch中取出的文本高亮顯示,如圖所示10. javascript - ios返回不執行js怎么解決?
排行榜
