【发布时间】:2016-05-12 07:00:36
【问题描述】:
我是 selenium webdriver 的初学者,我在其中创建了一个主类,我创建了一个可写类的对象,在这些类中我得到了“testSuitName”,然后它进入了可写类。
在可写类中我创建了一个构造函数并传递了字符串,在这些中我得到了值。
之后,当我尝试获取工作簿时,它显示为空,但根据 Windows 操作系统,我给出路径的方式是正确的。此外,在“testSuitePath”中,我得到了我的工作簿。
我无法解决问题,我哪里出错了? 谁能帮忙解决一下。
下面是这行写的构造函数:
public WritableData(String testSuitePath, String OBJECT_REPOSITORY_PATH) throws RowsExceededException, WriteException
{
// TODO Auto-generated constructor stub
try {
Workbook wbook = Workbook.getWorkbook(new File(testSuitePath));
WritableWorkbook wwbCopy= Workbook.createWorkbook(new File(testSuitePath),wbook);
System.out.println("writable workbookC-->" +wwbCopy);
WritableSheet shSheet=wwbCopy.getSheet("Login");
System.out.println("writable sheetC-->" +shSheet);
} catch (Exception e) {
// TODO: handle exception
System.out.println("Exception message" + e.getMessage()); e.printStackTrace(); }
}
【问题讨论】:
-
你传递的是绝对路径还是相对路径?
-
@Frank 绝对之一。
-
好的。您可以在
wbook = Workbook.getWorkbook(...)之前放置以下行并在新行“File workbookFile = new File(testSuitePath)”之后设置断点吗?然后看看你是否真的有一个文件对象。您能否进一步发布您的 testSuitePath? -
嗯,如果文件存在,但 Workbook 说找不到,那么可能是文件有问题。工作簿尝试读取它从您的文件创建的 FileInputStream。如果它无法读取它,则会引发带有您提到的消息的 BiffException。尝试删除并重新创建文件。哦,请务必将其存储在旧的 Excel 格式中,因为据我所知,问题扫描是由新格式引起的。
-
我的错误太愚蠢了,实际上问题在于脚本表名称被称为“登录”,但工作簿表名称不同。所以,这就是它显示空值的原因。无论如何感谢您的努力@Frank :)