在某些情况下,getTitle()方法对我不起作用。
看看。
@Test
public void testTitleReliability() {
driver.get("https://www.google.com");
boolean title = driver.getTitle() == "Google";
if(title)
System.out.println("I am working correctly");
else if(!title)
System.out.println("I am broken!");
然而,它将适用于此:
@Test
public void testTitleReliability() {
driver.get("https://www.google.com");
boolean title = driver.getTitle().contains("Google");
if(title)
System.out.println("I am working correctly");
else if(!title)
System.out.println("I am broken!");
任何人都知道为什么?
答案 0 :(得分:3)
“==”只检查两个引用变量是否指向Java堆中的同一个对象,并且因为String在Java中是不可变的并且在String池中维护两个String literal引用相同的String对象,这意味着“==”可以用于比较不正确的字符串。总是使用equals()方法进行相等性检查,并使用compareTo方法进行实际的字符串比较。