這是我的下拉選單的問題:
作為一名自動化測驗人員,我在使用 Selenium 的Select();方法“下拉欄位”時遇到了一些問題。如果我必須在多個回圈中運行測驗并在每個下一個回圈中從下拉串列中選擇不同的選項,我只使用Select();方法并且效果很好。
現在的問題是,在 HTML 代碼中,我什至看不到下拉選項。該欄位更改為動態,不再是靜態的。
我該如何解決此功能,或者它只是一種糟糕的編程習慣?
uj5u.com熱心網友回復:
我認為在下拉選單中有動態選項是不錯的做法。
要為此撰寫端到端測驗,這取決于這些選項的動態程度。如果它們在不同版本之間發生變化(例如系統中可用的產品類別),您可能應該在測驗中對它們進行編碼。這樣,如果選項更新,則必須更新測驗,這是有道理的(如果沒有找到預期的選項,測驗將失敗)。
如果選項因外部因素而改變(例如 Twitter 上當前的前 10 個熱門話題),那么您無法在測驗中對它們進行編碼。然后,您可能應該嘗試按索引(例如第一個)選擇一個并將測驗引數化以處理可能存在的任何值。或者,您可以存根 'TrendingValuesFromTwitterService'(保留我的示例)以提供一組固定的值用于您的測驗目的。
uj5u.com熱心網友回復:
通常使用 Select、Dropdown 或組合框的靜態資料是最佳實踐。不幸的是,有時我們需要帶有 Selects 的動態資料。最好的方法是使用 Fluent Waits for Select 包含您的選項。此外,Thread.sleep()是另一種解決方案,但不是優選的。然而,它是精確的解決方案。嘗試為您的選擇選項實作流暢或隱式等待。例如,ElementToBeVisible或ElementToBeExists等。
結帳硒檔案
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/366545.html
