数据匹配,即使程序在excel中设置为false FALSE – Selenium Web驱动程序

我已经创build了与控制台输出与Excel单元格数据匹配的程序,并基于数据匹配打印“TRUE” – “FALSE”。 问题是我的数据在这里匹配100%,那么在excel中也打印“FALSE”,为什么?

代码如下:

//CODE TO REMOVE UNNECESSARY WARNING System.setProperty("org.apache.commons.logging.Log", "org.apache.commons.logging.impl.Jdk14Logger"); //CALL FIREFOX DRIVER TO OPEN IT WebDriver driver = new FirefoxDriver(); //GETTING PAGE , OPEN IT IN BROWSER AND GET PAGE TITLE TO PRINT IT driver.get("http://en.wikipedia.org/wiki/Software_testing"); String title = driver.getTitle(); System.out.println(title); //EXCEL FILE READING FileInputStream input = new FileInputStream("D:\\sel.xls"); int count=0; HSSFWorkbook wb = new HSSFWorkbook(input); HSSFSheet sh = wb.getSheet("sheet1"); HSSFRow row = sh.getRow(count); String data = row.getCell(1).toString(); System.out.println(data); //CONDITION TO MATCH CONSOLE OUTPUT WITH EXCEL CELL DATA VALUE if(title==data) { FileOutputStream webdata = new FileOutputStream ("D:\\sel.xls"); row.createCell(10).setCellValue("TRUE"); wb.write(webdata); } else { FileOutputStream webdata = new FileOutputStream ("D:\\sel.xls"); row.createCell(11).setCellValue("FALSE"); wb.write(webdata); } driver.close(); wb.close(); input.close(); } } 

标题和数据是两个不同的对象,意味着持有两个不同的引用。 您的==符号将匹配引用,而不是确切的价值。 使用equals()来代替。

使用

 if(title.equals(data)) 

代替

 if(title==data)