java - 在 Selenium-Webdriver 中将 Java 变量与 Sikuli 一起使用

标签 java selenium-webdriver sikuli

下面的代码是 Selenium Webdriver 中的 Java 代码。该代码从 Excel 工作表中读取一长串列表。它将每个 Excel 单元格中的值存储在变量 LastNameFirstName 中。导航到 SQL Server Management Studio 数据库后,我需要在查询中使用变量。这就是我遇到问题的地方。当我使用命令“screen.type(LastName);”时,变量 LastName 抛出“无法解析为变量”错误。

如何在 Sikuli 中使用 Java 中定义的变量 LastNameFirstName

File src = new File ("C:\\EmployeeList.xlsx");
FileInputStream fis = new FileInputStream(src);
XSSFWorkbook wb = new XSSFWorkbook(fis);
XSSFSheet sheet1 = wb.getSheetAt(0);
int rowcount=sheet1.getLastRowNum();
System.out.println("Total Row is :" + rowcount);

for (int i=0; i<rowcount;i++) {
    String LastName=sheet1.getRow(i).getCell(0).getStringCellValue();   
    String FirstName=sheet1.getRow(i).getCell(1).getStringCellValue();  
    System.out.println("Data Employee List is " +i+ " "+"is "+ LastName+ ", "+FirstName+");
}

wb.close();

//Navigated into SQL Server management studio database
  screen.type(LastName);

最佳答案

LastName 是在 for 循环局部作用域中声明的,因此它不存在于 for 之外。需要对外声明

String lastName, firstName;
for (int i = 0 ; i < rowcount ; i++) {
    lastName = sheet1.getRow(i).getCell(0).getStringCellValue();   
    firstName = sheet1.getRow(i).getCell(1).getStringCellValue();  
    System.out.println("Data Employee List is " + i + " " + "is " + lastName + ", " + firstName);
}

screen.type(lastName);

我不确定这是否是故意的,但 screen.type(lastName); 将仅使用 lastNamelast 值。如果您想使用所有这些,请将其插入循环中。在这种情况下,您可以将 lastName 声明保留在 for

for (int i = 0 ; i < rowcount ; i++) {
    String lastName = sheet1.getRow(i).getCell(0).getStringCellValue();   
    String firstName = sheet1.getRow(i).getCell(1).getStringCellValue();
    System.out.println("Data Employee List is " + i + " " + "is " + lastName + ", " + firstName);
    screen.type(lastName);
}

顺便说一下,Java 中的变量应该以小写字母开头。

关于java - 在 Selenium-Webdriver 中将 Java 变量与 Sikuli 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36247546/

相关文章:

java - 为什么我的 uniform 没有在 openGL 中初始化?

用于浏览器测试的 Sikuli -?

selenium - 使用 WinAPpDriver 对 Windows 桌面应用程序和 C# 进行图像比较和可视化测试

java - 无法创建新的远程 session - Selenium webdriver

java - Selenium-Java-Actions 类型错误 : rect is undefined

java - 在自动化测试窗口中维护浏览器历史记录或缓存

java - Spring Boot强制 headless (headless)模式

java - Tomcat 未在 Amazon EC2、Redhat 实例上运行

java - 如何计算多维数组的元素个数?

java - ORA-00904 JPA EclipseLink 2.1 标识符无效