Я написал фрагмент кода для установки локаторов, которые будут использоваться в моем селеном scipt в hashmap, также написал там набор записей, чтобы получить значения с карты.Получение значений из Hashmap в другом классе
public class ReadDatafromExcel {
@Test
public void putIntoHashmap() throws IOException
{
FileInputStream inputStream = new FileInputStream("/home/suvin/Documents/SeleniumWebdriver/Script/PaytmAutomationFramework/src/testUtilities/TestData.xlsx");
XSSFWorkbook workbook= new XSSFWorkbook(inputStream);
XSSFSheet firstSheet = workbook.getSheetAt(0);
Iterator<Row> rowiterator = firstSheet.iterator();
HashMap<String,String> map= new HashMap<String, String>();
String key= null;
String value= null;
while (rowiterator.hasNext()) {
Row nextRow = rowiterator.next();
Iterator<Cell> cellIterator = nextRow.cellIterator();
int i;
for (i=0;i<=1;i++)
{
Cell cell = cellIterator.next();
if(i==0)
{
key =cell.getStringCellValue();
}
if(i==1)
{
value=cell.getStringCellValue();
break;
}
}
map.put(key, value);
}
// String Retrieved_value= map.get("Test11");
// System.out.println(Retrieved_value);
Set set= (Set)map.entrySet();
Iterator itr= set.iterator();
while(itr.hasNext())
{
Map.Entry entry= (Entry)itr.next();
System.out.println(entry.getKey()+":"+entry.getValue());
}
}
}
Теперь я хочу использовать этот файл в другом классе. Я создал объект-е класса ReadDatafromExcel, как это в новом классе
public class ccTransactions {
public ReadDatafromExcel rd = new ReadDatafromExcel();
}
Я хочу использовать значение hasmap созданного в ReadDatafromExcel в этом классе. Как мне это сделать?
что-то вроде
driver.findelement(By.Xpath(USE VALUE FROM HASHMAP)).sendkeys();
Привет, Спасибо за ваш ответ. Это действительно помогает. Однако теперь, когда я ввожу числовое значение для чтения из excel, я получаю сообщение об ошибке «Невозможно получить значение STRING из ячейки NUMERIC». Как я могу изменить приведенный выше код, чтобы справиться с этим? –
Затем используйте nextRow.getCell (0) .getNumericCellValue(); вместо nextRow.getCell (0) .getStringCellValue(); –