51Testing软件测试论坛

标题: webdriver如何出发iput type=file的上传文件或图片的事件 [打印本页]

作者: starlifht    时间: 2012-10-24 17:35
标题: webdriver如何出发iput type=file的上传文件或图片的事件

点图中的 ”上传图片“ 按钮会弹出 windows的上传图片对话框。现在遇到的问题是    无法定位到这个元素 并且实现click 。
求助:如何才能正确定位上传图片  来实现这个点击动作,触发弹窗

源码如下




作者: starlifht    时间: 2012-10-25 11:50
没大牛解答?
作者: 123shio123    时间: 2012-10-26 15:06
xpath
点上面的链接a,不知道对不对可以试试
作者: starlifht    时间: 2012-10-29 09:56
回复 3# 123shio123


    不行   试过了
作者: 六月天    时间: 2012-10-29 22:38
没理由定位不到的。你先看,这个发生click的元素不是<a>,应该是<input>元素,所以你应该定位<input>元素。很简单的定位,应By.className就可以定位这个input元素了。我帮你试过了,一点问题没有
作者: vipwork    时间: 2012-11-5 11:52
可以定位到的,我这边也有这种类似的按钮,并且成功的完成了上传文件的操作。而且的确是定位input,不是a。我是用selenium2完成的。
作者: m1014519748    时间: 2012-11-28 21:46
遇到类似的问题,虽然可以找到元素,但是点击元素时就会出错,提示:selenium.common.exceptions.WebDriverException: Message: ''
作者: bob123654    时间: 2012-12-28 16:01
用一下方式解决
//得到当前窗口的句柄
                String currentWindow = dr.getWindowHandle();
                //得到所有窗口的句柄
                Set<String> handles = dr.getWindowHandles();
                Iterator<String> it = handles.iterator();
                while(it.hasNext()){
                        if(currentWindow == it.next())  continue;
                        WebDriver        window = dr.switchTo().window(it.next());
                        System.out.println("title,url = "+window.getTitle()+","+window.getCurrentUrl());
                }
作者: suzeqiang    时间: 2013-10-21 18:13
点了那个上传图片,弹出本地选择图片的框了,然后怎么办啊?求告知!!!!
作者: suzeqiang    时间: 2013-10-21 18:13
点了那个上传图片,弹出本地选择图片的框了,然后怎么办啊?求告知!!!!
作者: yueyingmail    时间: 2016-7-7 14:14
你定位到的那个元素直接.sendkeys(filepath)就可以了
不用.click()




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2