我的var results = from row in dt.AsEnumerable()
group row by new
{
Policy = row.Field<int>("POLICY"),
StartDt = row.Field<string>("START_DT"),
EndDt = row.Field<string>("END_DT"),
Type = row.Field<string>("TYPE")
} into groupings
select new
{
groupings.Key.Policy,
groupings.Key.StartDt,
groupings.Key.EndDt,
groupings.Key.Type,
TotalAmount = groupings.Sum(t => t.Fields<decimal>("AMOUNT"))
}
上有一个Clear Filter
按钮,点击后会被删除。
我的测试用例如下:
1)单击“清除过滤器”按钮
2)检查是否已从UI中删除了“清除过滤器”按钮
在下面的代码中,我点击了按钮,然后我再次点击它,因为它不存在测试用例应该通过,但我试图通过再次点击它来验证失败,这似乎不是最佳方式......
UI
我可以在此处使用 log_page.clear_filter_bttnclick()
try:
if log_page.clear_filter_bttnclick():
testrailFunctions.failed()
except NoSuchElementException:
testrailFunctions.passed()
来验证按钮是否被移除,或者是否有更好的方法来确认try/except
上不再存在Clear Filter
按钮?
干杯
答案 0 :(得分:0)
您可以检查元素是否存在。
在python中它应该完成如下: -
from selenium.common.exceptions import NoSuchElementException
def check_exists_by_xpath(xpath):
try:
webdriver.find_element_by_xpath(xpath)
except NoSuchElementException:
return False
return True
来源: -
Python - Selenium WebDriver - Checking element exists
OR
方法返回WebElement对象,而不是对象列表。你必须这样做:
if len(browser.find_elements_by_xpath('//path')) == 0:
print ('element not present')
Sorce: -