机械手框架-无法上传文件

时间:2019-01-24 12:21:33

标签: selenium robotframework

在测试用例中,我具有以下关键字来上传文件:

Upload IP
    SeleniumLibrary.Click Element    xpath=/html/body/div[1]/div/div/div[2]/div/div[2]/div/div/div/div/div[2]/div[1]/app-root/div/div/app-permit-form/div/form/div[2]/div[1]/elicatmu-permit-wizard/div/a[2]
    Click Element    xpath=/html/body/div[1]/div/div/div[2]/div/div[2]/div/div/div/div/div[2]/div[1]/app-root/div/div/app-permit-form/div/form/div[5]/blup-oc-documents-form/div/elicatmu-file-upload-group/div/div[1]/div[1]/div[1]/elicatmu-file-upload/div/div[1]/div/a/i
    Choose File    xpath=/html/body/div[1]/div/div/div[2]/div/div[2]/div/div/div/div/div[2]/div[1]/app-root/div/div/app-permit-form/div/form/div[5]/blup-oc-documents-form/div/elicatmu-file-upload-group/div/div[1]/div[1]/div[1]/elicatmu-file-upload/div/div[1]/div/a/i    C:\\RobotProjects\\OccupationCertificate\\DOCs\\Application Form.pdf

运行测试用例时,出现以下错误:

  

WebDriverException:消息:未知错误:无法聚焦元素
  (会话信息:chrome = 71.0.3578.98)(驱动程序信息:   chromedriver = 2.45.615291   (ec3682e3c9061c10f26ea9e5cdcf3c53f3f74387),平台= Windows NT   10.0.16299 x86_64)

我已经尝试过没有Click Element Keyword,结果是一样的。我也尝试更改文档路径,这是相同的。 我认为问题可能出在chrome webdriver,但我确实需要在chrome上运行此测试。

HTML代码是:

<a _ngcontent-c21=""><span _ngcontent-c21="">browse files</span><i _ngcontent-c21="" class="fas fa-folder-open"></i></a>

2 个答案:

答案 0 :(得分:1)

如果您正在使用SeleniumLibrary中的Choose File,则Choose File的定位符需要指向一个<input>元素。您将其指向<i>元素。这将解释该错误,因为硒似乎无法将键盘焦点赋予<i>元素是合理的。

答案 1 :(得分:-1)

你可以尝试

xpath=//span[contains(.,"browse files")]/i

作为元素的定位符?