[![在此处输入图像说明] [1]] [1]
在图像中编号不按顺序排列,我需要验证序列1,2,3,4中是否没有,然后测试用例传递失败。
社交网络网址#1: 文本框
社交网络网址#2: 文本框 社交网络URL#1: 文本框 社交网络URL#1: 文本框
验证编号应该是1,2,3,4
请帮忙,他们不允许我附上图片以获得更多清关
答案 0 :(得分:-1)
您可以使用给定的driver.find_elements_by_css_selector(css_selector)
按css_selector
获取所有元素,然后通过.text
获取文本,最后检查数字是否按顺序增加:
Python:
def check_if_sequencial(css_selector):
result = True
elms = driver.find_elements_by_css_selector(css_selector)
for i in xrange(len(elms) - 1):
text1 = elms[i].text
text2 = elms[i+1].text
# slicing after dash to end of string, convert to int
number1 = int(text1[text1.index("#")+1 : len(text1)])
number2 = int(text1[text2.index("#")+1 : len(text2)])
if number2 != number1 + 1:
print "number1: %d and number2: %d are not sequencial" %(number1, number2)
result = False
break
return result
爪哇:
public boolean check_if_sequencial(String css_selector){
boolean result = true;
List elms = driver.findElements(By.cssSelector(css_selector));
for (int i = 0; i < elms.length - 1; i++) {
String text1 = elms[i].text;
String text2 = elms[i+1].text;
# spliting by dash take the second, convert to int
String[] parts1 = text1.split("#");
int number1 = Integer.parseInt(parts1[1]);
String[] parts2 = text2.split("#");
int number2 = Integer.parseInt(parts2[1]);
if (number2 != number1 + 1){
System.out.println("number1: " + number1 + " and number2: " + number2 + " are not sequencial");
result = false;
break;
}
}
return result;
}