0

我有一个 Excel 文件,我的所有链接都存储在一个列中。每行一个链接。例如:

www.example.com
www.test.com
www.demo.com

等等。我想要做的是访问每个链接并在 Firefox 中打开它。获取地址栏中的链接并将其与 Excel 单元格中的链接进行比较。如果两者相同,则在下一个单元格中设置字符串“Pass”,否则设置字符串“Fail”。我该怎么做呢。你能给我一个示例代码吗?我正在使用带有 java 的 selenium web 驱动程序。

这是我尝试过的:

try {
    FileInputStream file=new FileInputStream(new File(path));
    FileOutputStream outFile=new FileOutputStream(new File(path));
    HSSFWorkbook workbook=new HSSFWorkbook(file);
    HSSFSheet sheet=workbook.getSheetAt(0);
    HSSFCell cell=null;     
    int s=sheet.getLastRowNum()+1;
    for(int i=0; i<s; i++){
        cell=sheet.getRow(i).getCell(0);
        String url=cell.toString();
        driver.get(url);
        Thread.sleep(10000);
        String urlnew=driver.getCurrentUrl().toString();
        HSSFRow row=sheet.getRow(i);
        HSSFCell cellresult=row.createCell(1);
        if(url==urlnew){
            cellresult.setCellValue("Pass");
        }else{
            cellresult.setCellValue("fail");
        }
        workbook.write(outFile);
    }    
    file.close();  
    outFile.close();
} 
4

2 回答 2

0

在您的代码中,您使用了以下语句来比较两个字符串。

if(url==urlnew)

使用下面的代码。它会起作用的。

if(url.equals(urlnew))

有关字符串比较的更多信息,请查看链接。

于 2013-03-25T04:01:54.350 回答
0
  1. 驱动程序 = webdriver.Firefox();
  2. 加载 Excel 文件(你可以使用这个
  3. 在行循环中,添加以下代码: driver.get(<cell URL>);
于 2013-03-23T22:01:42.930 回答