2024最新Selenium面试题,建议收藏备用!

一.你在TestNG中使用了哪些注解?

  • @Test

  • @BeforeSuite

  • @AfterSuite

  • @BeforeTest

  • @AfterTest

  • @BeforeClass

  • @AfterClass

  • @BeforeMethod

  • @AfterMethod

二.如何从Excel中读取数据?

FileInputStream fs = new FileInputStream(“excel文件路径”);
Workbook wb = WorkbookFactory.create(fs);
Sheet s = wb.getSheet(“sheetName”);
String value = s.getRow(rowNum).getCell(cellNum).getStringCellValue();

三.xpath的作用是什么?

在网页中查找元素,对于动态元素可以使用xpath

四.常用的元素定位有几种?

8种定位器,都是By类的静态方法。

  • By.id()

  • By.name()

  • By.tagName()

  • By.className()

  • By.linkText()

  • By.partialLinkText()

  • By.xpath

  • By.cssSelector()

五.Assert和Verify有什么区别?

AssertVerify都是用于验证结果。如果测试用例失败,那么Assert将停止测试用例的执行,并且不再往下执行后续的测试步骤。对于Verify如果测试用例失败,都不会停止当前的程序执行,并且所有测试步骤都将被执行到。

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:691998057【暗号:csdn999】

六.登录按钮除了click之外还有什么方法

使用submit()方法,但它只能在属性type=submit时使用。

七.如何验证复选框/单选框是否被选中?

driver.findElement(By.xpath("元素路径")).isSelected();

八.如何处理Alert?

String mainPage = driver.getWindowHandle();
// 切换到alert弹窗
Alert alt = driver.switchTo().alert(); 
// 点击确定
alt.accept(); 
// 点击取消
alt.dismiss(); 
// 切换到页面
driver.switchTo().window(mainPage); 

九.如何启动Chrome浏览器

System.setProperty(“webdriver.chrome.driver”,”chromeDriver驱动文件 ”);
WebDriver driver = new ChromeDriver();

十.如何使用WebDriver执行右键单击?

Actions act = new Actions(driver); 
act.moveToElement(webElement).perform();
act.contextClick().perform();

十一.如何使用WebDriver执行拖放?

Actions act = new Actions(driver);
WebElement source = driver.findElement(By.xpath(“ -----”)); 
WebElement target = driver.findElement(By.xpath(“ -----”)); 
act.dragAndDrop(source,target).perform();

十二.举例Selenium中重载的方法

// 方法一:通过 iframe的索引值,在页面中的位置
driver.switchTo().frame(index);
// 方法二:通过 iframe 的name 或者id
driver.switchTo().frame(nameOrId);
// 方法三:通过iframe 对应的webElement        
driver.switchTo().frame(frameElement);

十三.如何上传文件?

driver.findElement(By.xpath(“元素路径”)).sendKeys(“本地文件路径”);

十四.如何选择下拉菜单中的菜单项

如果是select标签,我们可以使用selectByValue()selectByIndex()selectByVisibleText()方法。如果不是select标签,那么我们可以简单地找到该元素的xpath并单击它来选择。

十五.如何模拟浏览器的前进/后退

// 后退
driver.navigate().back();
// 前进
driver.navigate().forward();

十六.如何获取当前页面的URL

driver.getCurrentUrl();

十七.单斜杠和双斜杠有什么区别

  • /用于标识直接子节点

  • //用于在整个结构中查找

十八.findElement和findElements有什么区别?

这两个方法都是WebDriver接口的抽象方法,用于在网页中查找元素。

  • findElemen():用于查找一个Web元素。它只返回一个WebElement类型。

  • findElements():用于查找多个Web元素。它返回WebElements集合。

十九.如何向Excel中读写数据

FileInputStream fis = new FileInputStream(“Excel文件”);
Workbook wb = WorkbookFactory.create(fis);
Sheet s = wb.getSheet("sheetName");
// 读取Excel数据
String value = s.getRow(rowNum).getCell(cellNum).getStringCellValue(); 
// 向Excel中写入数据
s.getRow(rowNum).getCell(cellNum).setCellValue("value to be set"); 
FileOutputStream fos = new FileOutputStream(“Excel文件”);
wb.write(fos); 

二十.如何从文本框中获取输入的文本?

String text = driver.findElement(By.xpath("元素路径 ")).getAttribute("value"));

二十一.在使用WebDriver时,有哪些常见的异常?

  • NoSuchElementException - 元素未找到异常

  • ElementNotVisibleException - 元素不可见异常

  • ElementNotSelectableException - 元素不可选择异常

  • NoAlertPresentException - 未找到警报异常

  • NoSuchAttributeException - 未找到属性异常

  • NoSuchWindowException - 未找到窗口异常

  • TimeoutException - 超时异常

  • WebDriverException - WebDriver异常

二十二.如何清除文本框的内容?

// 使用clear()方法
driver.findElement(By.xpath("元素路径")).clear();

二十三.selenium webdriver有什么优点?

1.Selenium支持主流浏览器如ChromeFirefoxIESafari等,可以在不同浏览器上运行和测试应用。

2.支持大多数语言,如JavaPythonRubyC#等。

3.Selenium提供了丰富的API可以根据测试需求进行扩展,实现定制化的测试用例。

4.Selenium可以很好地与Jenkins,测试管理工具等集成,实现自动化测试的持续集成和持续交付。

二十四.什么是Selenium Grid?

Selenium-Grid允许在不同的机器上针对不同的浏览器并行运行测试。也就是说,在不同的机器、不同的浏览器和操作系统上同时运行多个测试。本质上,Selenium-Grid支持分布式测试执行。

二十五.如何操作页面滚动

  • https://www.cnblogs.com/mrjade/p/8378461.html

  • https://www.cnblogs.com/mrjade/p/7112247.html

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

最后: 可以在公众号:程序员小濠 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/601331.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码随想录day21 二叉搜索树进阶

530.二叉搜索树的最小绝对差 题目 给你一棵所有节点为非负值的二叉搜索树,请你计算树中任意两节点的差的绝对值的最小值。 示例: 思考 本题有一种笨办法,就是把二叉树的所有结点都存到一个vector里,因为二叉搜索树是左中右排序…

【致远FAQ】V8.0_甘特图能不能实现行表头一级一级显示(树形结构)

问题描述 甘特图能不能实现行表头一级一级显示(树形结构) 问题解决 设置统计时把合并同类型和显示行合计都勾选上就可以了 效果参考

AcWing 851. spfa求最短路AcWing 852. spfa判断负环—spfa算法

问题链接:AcWing 851. spfa求最短路 问题描述 spfa算法是对bellman-ford算法的改进,bellman-ford算法比较笨,要遍历所有边来更新,其实如果当前点没有被更新的话,就不用用当前点来更新他所连接的点了。我们只需要每次更新一个点后…

小游戏实战丨基于Tkinter的五子棋小游戏

文章目录 写在前面Tkinter五子棋系列文章写在后面 写在前面 本期内容:基于tkinter的五子棋小游戏 下载地址:https://download.csdn.net/download/m0_68111267/88700190 实验环境 python3.11及以上pycharmtkinter Tkinter Tkinter是Python的一个标准…

vue2 element 弹出框拖拽会出现一层阴影问题

问题如图所示&#xff1a; 因增加 draggable 属性导致我弹窗表单清空文本框时&#xff0c;从右向左选中字体会出现拖拽阴影效果 去掉 draggable 即可 <template><div class"sys-jobTrigger-container"><el-dialog:visible.sync"state.isShowD…

密码学:一文看懂初等数据加密一对称加密算法

文章目录 对称加密算法简述对称加密算法的由来对称加密算法的家谱数据加密标准-DES简述DES算法的消息传递模型DES算法的消息传递过程和Base64算法的消息传递模型的区别 算法的实现三重DES-DESede三重DES-DESede实现 高级数据加密标准一AES实现 国际数据加密标准-IDEA实现 基于口…

25计算机专业考研经验贴之准备篇

Hello各位小伙伴&#xff0c;大家新年好&#xff01; 马上就要进入寒假假期了&#xff0c;25考研也该提上日程了。今天先跟大家分享一下大家在假期可以先做起来的准备工作。 【选择学校】 择校是个非常重要的内容&#xff0c;因为不同学校的考试内容是不一样的&#xff0c;有些…

SpringBoot基于哨兵模式的Redis(7.2)集群实现读写分离

文章目录 一、前提条件二、SpringBoot访问Redis集群1. 引入依赖2. yaml配置3. 设置读写分离4. 简单的controller 三、运行四、测试1. 写2. 读3. 额外测试 环境 docker desktop for windows 4.23.0redis 7.2Idea 一、前提条件 先根据以下文章搭建一个Redis集群 Docker-Compo…

FreeRTOS 实时操作系统第九讲 - 链表 (数据结构)

一、链表简述 链表是一种物理存储单元上非连续、非顺序的存储结构&#xff0c;数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列节点&#xff08;链表中每一个元素称为节点&#xff09;组成&#xff0c;节点可以在运行时动态生成。每个节点包括两个部分&…

Spring整合MyBatis框架!!!

搭建环境&#xff1a; pom.xml: <properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></pro…

指定linux文件夹下所有文件赋权命令“chmod -R 755”

仓库&#xff1a;Ai-trainee/GPT-Prompts-Hub 下面我们假设要为&#xff1a;/opt/robot/lib/robot_control/下所有子文件赋权 如果要为 robot_control 目录中的所有文件分配权限&#xff08;在 Linux 术语中也称为“更改文件权限”或“chmod”&#xff09;&#xff0c;则可以…

残疾大学生找工作好难

有点肢体残疾且普通话不太标准的大学生好难找工作啊&#xff0c;怎么办&#xff1f;难道得去捡垃圾了&#xff1f;求学多年&#xff0c;好容易读了个大学(省内一本)&#xff0c;我咋这么命苦&#xff0c;找了800多家&#xff0c;面试好几家&#xff0c;都没一个要我的。

Microsoft Visual Studio 2022 install Project 下载慢

1. 关闭Internet 协议版本6 2. 如果没有效果&#xff0c;打开Internet 协议版本4&#xff0c;更改DNS 3. 在浏览器中下载后安装&#xff0c;下载地址如下&#xff1a; Microsoft Visual Studio Installer Projects 2022 - Visual Studio Marketplace 4. 安装时注意关闭vs&…

2024CISA开门红,凌晨通过

祝各位新年快乐&#xff0c;万事顺遂 听说最近it内审有很多甲方开始裁员&#xff0c;为了防止波及到各位&#xff0c;想必各位也在考虑考取证书提高自己的权重&#xff0c;就算后面波及到了自己&#xff0c;去换工作的时候也会快人一步 但是大家都知道&#xff0c;最近都忙得…

一种DevOpts的实现方式:基于gitlab的CICD(一)

写在之前 笔者最近准备开始入坑CNCF毕业的开源项目&#xff0c;看到其中有一组开源项目的分类就是DevOpts。这个领域内比较出名的项目是Argocd&#xff0c;Argo CD 是一个用于 Kubernetes 的持续交付 (Continuous Delivery) 工具&#xff0c;它以声明式的方式实现了应用程序的…

五、HTML 标题

在 HTML 文档中&#xff0c;标题很重要。 一、HTML 标题 标题&#xff08;Heading&#xff09;是通过 <h1> - <h6> 标签进行定义的。<h1> 定义最大的标题。 <h6> 定义最小的标题。 <h1>这是一个标题。</h1> <h2>这是一个标题。&l…

第九节HarmonyOS 常用基础组件9-TextArea

1、描述 多行文本输入框组件&#xff0c;当输入的文本内容超过组件宽度时会自动换行显示。 2、接口 TextArea(value?:{placeholder?: ResourceStr, text?: ResourceStr, controller?: TextAreaController}) 3、参数 参数名 参数类型 必填 描述 placeholder Resour…

使用mysql查询当天、近一周、近一个月及近一年的数据以及各种报表查询sql

1.mysql查询当天的数据 1 select * from table where to_days(时间字段) to_days(now()); 2.mysql查询昨天的数据 1 select * from table where to_days(now( ) ) - to_days( 时间字段名) < 1 3.mysql查询近一个月的数据 1 SELECT * FROM table WHERE date(时间字段) …

迁移数据mysql到clickhouse

场景&#xff1a; 项目上需要将mysql表中数据迁移到clickhouse。 理论&#xff1a; 借助MaterializeMySQL 说明&#xff1a; 首先该方案实施需要启动mysql的binlog配置否则同步不了&#xff0c;尽管MaterializeMySQL官方说是在实验阶段&#xff0c;不应该在生产上使用&#x…

主浏览器优化之路2——Edge浏览器的卸载与旧版本的重新安装

Edge浏览器的卸载与旧版本的重新安装 引言开整寻找最年轻的她开始卸载原本的Edge工具下载后新版本的安装 结尾 引言 &#xff08;这个前奏有点长&#xff0c;但是其中有一些我的思考顿悟与标题的由来&#xff0c;望耐心&#xff09; 我在思考这个系列的时候 最让我陷入困得是…