pythonweb自动化测试用怎样快速找到iframe标签_【转载】webdriver 自动化测试如何定位到动态变化ID的iframe框内...

大家知道,在自动化测试脚本编写过程中,如果页面上跳出一个iframe框时,我们是定位不到框内内容的,可以通过

driver.findElement(By.id(""));

driver.switchTo().frame("id|name");

driver.switchTo().defaultContent();

来实现进入iframe和进入默认页面。今天在编写脚本过程中遇到了一个fancybox框,框内嵌入了iframe,但是该iframe的id是动态变化的,因此无法定位到iframe之内。

解决的办法是我们可以通过获取iframe的id来进入iframe,代码如下:

driver.switchTo().frame(e(By.xpath("//div[@class='fancybox-inner']/iframe")).getAttribute("id"));

其中函数e的源代码如下:

protected WebElement e(By by) {

try {

waitUtilElementExist(by);

return driver.findElement(by);

} catch (Exception e) {

fail("can not find element by:" + by);

}

return null;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值