隐藏输入时,使用webdriver上传文件

时间:2014-05-15 11:33:11

标签: upload webdriver hidden

我无法上传文件,我猜问题是因为隐藏了输入对象!

我的测试中有很多上传,但他们都使用""一切都很完美

这是我第一次使用类似下面的代码

另一个问题是,如果我从selenium IDE开始我的测试,但是当我从我的框架(testNG + webdriver)启动它时,它为什么会起作用

代码行是:

driver.findElement(By.xpath(" //输入[@type ='文件']&#34))的SendKeys(" C:\ test.txt的& #34);

对象结构是:

<button class="btn btn-lg btn-success" flow-btn="">
    <span class="glyphicon glyphicon-upload"/>
    <span>Upload files</span>
    <input type="file" style="visibility: hidden; position: absolute;" multiple="multiple"/>
</button>

1 个答案:

答案 0 :(得分:1)

很好,

我用这种方式解决了我的问题,它完美无缺! 但是,我想知道这是否是唯一的方法。我的意思是,让对象可见!

    String js = "arguments[0].style.visibility = 'visible';";
    jse.executeScript(js, element);
    element.sendKeys("C:\\test.txt");
    String jsa = "arguments[0].style.visibility = 'hidden';";
    jse.executeScript(jsa, element);