Hi I am trying to upload a file using WebUI.uploadFile. Since it was not working I used Robot class. But when I am running this in Jenkins I’m getting error. I believe robot class cannot support this.
How will I upload a file from my T drive without opening file explorer?
I used WebUI.uploadFile as below
WebUI.uploadFile(findTestObject(‘Object Repository/TP/PolicyQuestions/UploadNow’),‘T:\Katalon - Automation\PDFs\Sample.pdf’)
Xpath:
I used robot class as:
** crated a file within the project directory and took from there.
UploadFile(findTestObject(‘Object Repository/TP/PolicyQuestions/UploadNow’), ‘Sample.pdf’)
def UploadFile(TestObject to,String strFilePath) {
WebUI.doubleClick(to)
WebUI.delay(2)
String userDir = System.getProperty(“user.dir”)+“”+“\PDFDocuments\”+strFilePath+“”
WebUI.delay(4)
StringSelection ss = new StringSelection(userDir);
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss, null);
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
WebUI.delay(2)
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_V);
WebUI.delay(2)
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
WebUI.delay(2)
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss, null);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
robot.delay(1000)
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_V);
robot.delay(1000)
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
WebUI.delay(2)
}
Anyone please help?