编程语言
首页 > 编程语言> > 《手把手教你》系列技巧篇(四十六)-java+ selenium自动化测试-web页面定位toast-下篇(详解教程)

《手把手教你》系列技巧篇(四十六)-java+ selenium自动化测试-web页面定位toast-下篇(详解教程)

作者:互联网

1.简介

终于经过宏哥的不懈努力,偶然发现了一个toast的web页面,所以直接就用这个页面来夯实一下,上一篇学过的知识-处理toast元素。

2.安居客

事先声明啊,宏哥没有收他们的广告费啊,纯粹是为了学习和实战的。

2.1被测网址

1.被测网址的地址:

https://login.anjuke.com/login/form?history=aHR0cHM6Ly9iZWlqaW5nLmFuanVrZS5jb20v

2.网页如下图:

2.2代码设计

2.3参考代码

package lessons;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

/**
 * @author 北京-宏哥
 * 
 * 《手把手教你》系列技巧篇(四十五)-java+ selenium自动化测试-web页面定位toast-下篇(详解教程)
 *
 * 2021年11月17日
 */
public class TestToast1 {
    
    public static void main(String[] args) throws InterruptedException {
            
            System.setProperty("webdriver.gecko.driver", ".\\Tools\\chromedriver.exe");
            WebDriver driver =null;
            try {    
                driver = new ChromeDriver();  
                 
                driver.manage().window().maximize();  
                      
                driver.get("https://login.anjuke.com/login/form?history=aHR0cHM6Ly9iZWlqaW5nLmFuanVrZS5jb20v");
                
                Thread.sleep(5000);
                
                driver.switchTo().frame("iframeLoginIfm");
                
                WebElement phoneIpt = driver.findElement(By.id("phoneIpt"));
                
                phoneIpt.sendKeys("13617831920");
                
                WebElement smsIpt = driver.findElement(By.id("smsIpt"));
                
                smsIpt.sendKeys("9999");
                
                driver.findElement(By.id( "checkagree" )).click();
                driver.findElement(By.id( "smsSubmitBtn" )).click();
                WebElement elementText = driver.findElement(By.className("toast"));//(加粗字体根据实际定位的元素信息进行填写)
                Thread.sleep(1000);
                String info = elementText.getText();
                System.out.println(info);
            } catch (Exception e) {
                e.printStackTrace();
            } finally{
                System.out.println("执行结束,关闭浏览器");
                driver.quit();
            }
    }

}

2.4运行代码

1.运行代码,右键Run AS->Java Appliance,控制台输出,如下图所示:

2.运行代码后电脑端的浏览器的动作,如下小视频所示:

<iframe frameborder="0" height="100%" src="https://streamja.com/embed/gO5NZ" style="width: 100%; height: 100%; position: absolute" width="100%"></iframe>

3.小结

 要么找不到,要么找到了,就都出现了,宏哥在这里定位了好久页面元素,可是运行代码报错,找不到元素,结果查看HTML发现,这里有一个iframe,没有切换所以死活定位不到,切换到iframe后,就定位成功了。

4.扩展

1.打开浏览器,访问页面,在出现提示信息的操作之前,按下F12,打开开发者工具,点击小齿轮。如下图所示:

2.按下F1(或者点击右上角的三个点出来设置),打开设置页面,如下图所示:

3.操作页面,让提示信息出现,然后马上勾选Debugger栏下的Disabled JavaScript

4.这个时候提示信息就不会消失了,该怎么处理就怎么处理

5.最后,记得改回去哦(去掉勾选)。

标签:toast,web,selenium,宏哥,driver,findElement,页面
来源: https://www.cnblogs.com/du-hong/p/15534259.html