selenium中验证码的自动获取与输入

selenium对网页进行自动化测试时实现验证码的自动获取与填充

此处示例为第十四届蓝桥杯软件测试比赛模拟赛自动化测试题目java

第十四届蓝桥杯软件测试比赛(模拟赛/省赛/国赛)参考答案:

https://lanqiao-courses.feishu.cn/docx/DClJdDImXoNMyfxleDMczKdbnYf

1.被测网页示例

在这里插入图片描述

2.自动获取验证码内容

题目要求为:输入验证码(已在前端页面源码中标签中隐藏,通过页面中元素的文本获得,并填充到验证码输入框

右击验证码所在位置进行检查,找到验证码文本所在的span标签以及验证码填充框所在的位置

在这里插入图片描述

3.selenium代码
//获取验证码
        WebElement verifiCode = driver.findElement(By.xpath("//*[@id=\"app\"]/div/div/div/form/div[3]/div/div/div[2]/span"));
        String code_text = verifiCode.getAttribute("textContent");
        Thread.sleep(2000);
        //输入验证码
        WebElement codeInput = driver.findElement(By.xpath("/html/body/div[1]/div/div/div/form/div[3]/div/div[1]/div[1]/input"));
        codeInput.sendKeys(code_text);
4.登录后使用断言验证用户名称—assertEquals()

在这里插入图片描述

 //登录后,获取登录的账户名称
        WebElement accountText = driver.findElement(By.xpath("//*[@id=\"app\"]/div/div[2]/div/div[1]/div[3]/div[3]/div"));
        String result_text = accountText.getText();
        Thread.sleep(2000);
         // assertEquals(result_text,"超管");
//两种断言形式,使用下述这种Assert时,需要导入import org.junit.Assert;
        Assert.assertEquals(result_text, "超管");

猜你喜欢

转载自blog.csdn.net/weixin_44992225/article/details/134518242