ATTD-如何验收多iframe嵌套元素

    xiaoxiao2023-10-10  168

    由于历史原因,一些大型机构的应用经常使用iframe开发Web应用,但是iframe的应用给Web的自动化测试造成了很大的困难。更是阻碍用户的自动化验收进程。在敏捷和DevOps流行的今天,我们如何客服这种障碍,把此类应用也加入敏捷和DevOps的历史潮流呢?

    请见我们的解决方法。

    企业敏捷与DevOps技术工具社区

    Web元素定位解决方法

    /* 两层iframe嵌套元素定位 定位第2层iframe中的邮箱营业厅图片 */ /* 第1层iframe中元素定位 应用中心菜单 */ Thread.sleep(2000); WebElement mainContentBox = driver.findElement(By.id("mainContentBox")); WebElement imain = driver.findElement(By.id("main")); WebElement divmain = driver.findElement(By.id("div_main")); //第1层iframe获取焦点 WebElement iframe = driver.findElement(By.id("googSubscription")); //焦点跳转到第1层iframe内 driver.switchTo().frame("googSubscription"); WebElement navcontainer = driver.findElement(By.id("navcontainer")); WebElement appcul = driver.findElement(By.xpath("//div[@id='navcontainer']/ul[2]")); WebElement appli = driver.findElement(By.xpath("//div[@id='navcontainer']/ul[2]/li[2]")); //点击应用中心菜单显示邮箱营业厅所在第2层iframe WebElement yingyong_i = driver.findElement(By.xpath("//div[@id='navcontainer']/ul[2]/li[2]/a/i")); yingyong_i.click(); //第2层iframe中邮箱营业厅图片 WebElement ul1 = driver.findElement(By.xpath("//div[@class='skin_main']")); driver.switchTo().frame("modulecontainer"); //点击邮箱营业厅 /image WebElement youx_bt = driver.findElement(By.xpath("//li[@title='邮箱营业厅']/div/a/img")); youx_bt.click();
    最新回复(0)