【发布时间】:2023-03-26 12:14:01
【问题描述】:
我正在使用通用代码来减少重复代码以从 UI 中读取值,如果有任何其他建议请告诉我。
readvaluefromUI(objidtype, objid) 功能如下所述。
它需要objidtype ---> 例如(ID,CSS_SELECTOR,NAME etc).
它取objid ---> object 的实际 id 并返回 object 的文本值。
def readvaluefromUI(objidtype, objid):
try:
if objidtype == "ID":
element = driver.find_element_by_id(objid).text
return(element)
elif objidtype == "CSS_SELECTOR":
element = driver.find_element_by_css_selector(objid).text
return(element)
elif objidtype == "CLASS_NAME":
element = driver.find_elements_by_class_name(objid).text
return(element)
elif objidtype == "XPATH":
element = driver.find_element_by_xpath(objid).text
return(element)
elif objidtype == "TAGNAME":
element = driver.find_elements_by_tag_name(objid).text
return(element)
elif objidtype == "NAME":
element = driver.find_elements_by_name(objid).text
return(element)
except:
Throwable(traceback)
它返回您可以在调用方法中使用的对象。
例如
readvaluefromUI(ID, "firstname")
【问题讨论】:
-
您有问题吗?
-
@cody 我的问题是我可以包含任何最新的对象类型以使其通用还是从 UI 读取值的更好方式?
-
@GhostCat :为我的错误道歉,我是新用户并在这里学习。当然,我不会再重复这个了。再次抱歉
-
没关系,我们都是来学习的。