2024最新Selenium面试题(附带答案),建议收藏备用

news2024/11/24 2:18:00
一.你在TestNG中使用了哪些注解?
  • @Test
  • @BeforeSuite
  • @AfterSuite
  • @BeforeTest
  • @AfterTest
  • @BeforeClass
  • @AfterClass
  • @BeforeMethod
  • @AfterMethod
二.如何从Excel中读取数据?
  1. FileInputStream fs = new FileInputStream(“excel文件路径”);

  2. Workbook wb = WorkbookFactory.create(fs);

  3. Sheet s = wb.getSheet(“sheetName”);

  4. 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有什么区别?

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

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

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

七.如何验证复选框/单选框是否被选中?
driver.findElement(By.xpath("元素路径")).isSelected();
八.如何处理Alert?
  1. String mainPage = driver.getWindowHandle();

  2. // 切换到alert弹窗

  3. Alert alt = driver.switchTo().alert();

  4. // 点击确定

  5. alt.accept();

  6. // 点击取消

  7. alt.dismiss();

  8. // 切换到页面

  9. driver.switchTo().window(mainPage);

九.如何启动Chrome浏览器
  1. System.setProperty(“webdriver.chrome.driver”,”chromeDriver驱动文件 ”);

  2. WebDriver driver = new ChromeDriver();

十.如何使用WebDriver执行右键单击?
  1. Actions act = new Actions(driver);

  2. act.moveToElement(webElement).perform();

  3. act.contextClick().perform();

十一.如何使用WebDriver执行拖放?
  1. Actions act = new Actions(driver);

  2. WebElement source = driver.findElement(By.xpath(“ -----”));

  3. WebElement target = driver.findElement(By.xpath(“ -----”));

  4. act.dragAndDrop(source,target).perform();

十二.举例Selenium中重载的方法
  1. // 方法一:通过 iframe的索引值,在页面中的位置

  2. driver.switchTo().frame(index);

  3. // 方法二:通过 iframe 的name 或者id

  4. driver.switchTo().frame(nameOrId);

  5. // 方法三:通过iframe 对应的webElement

  6. driver.switchTo().frame(frameElement);

十三.如何上传文件?
driver.findElement(By.xpath(“元素路径”)).sendKeys(“本地文件路径”);
十四.如何选择下拉菜单中的菜单项

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

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

  2. driver.navigate().back();

  3. // 前进

  4. driver.navigate().forward();

十六.如何获取当前页面的URL
driver.getCurrentUrl();
十七.单斜杠和双斜杠有什么区别
  • /用于标识直接子节点
  • //用于在整个结构中查找
十八.findElement和findElements有什么区别?

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

  • findElemen():用于查找一个Web元素。它只返回一个WebElement类型。
  • findElements():用于查找多个Web元素。它返回WebElements集合。
十九.如何向Excel中读写数据
  1. FileInputStream fis = new FileInputStream(“Excel文件”);

  2. Workbook wb = WorkbookFactory.create(fis);

  3. Sheet s = wb.getSheet("sheetName");

  4. // 读取Excel数据

  5. String value = s.getRow(rowNum).getCell(cellNum).getStringCellValue();

  6. // 向Excel中写入数据

  7. s.getRow(rowNum).getCell(cellNum).setCellValue("value to be set");

  8. FileOutputStream fos = new FileOutputStream(“Excel文件”);

  9. wb.write(fos);

二十.如何从文本框中获取输入的文本?
String text = driver.findElement(By.xpath("元素路径 ")).getAttribute("value"));
二十一.在使用WebDriver时,有哪些常见的异常?
  • NoSuchElementException - 元素未找到异常
  • ElementNotVisibleException - 元素不可见异常
  • ElementNotSelectableException - 元素不可选择异常
  • NoAlertPresentException - 未找到警报异常
  • NoSuchAttributeException - 未找到属性异常
  • NoSuchWindowException - 未找到窗口异常
  • TimeoutException - 超时异常
  • WebDriverException - WebDriver异常
二十二.如何清除文本框的内容?
  1. // 使用clear()方法

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

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

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

2.支持大多数语言,如Java,Python,Ruby,C#等。

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

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

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

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

相关文章

Web前端知识视频教程分享(五) Bootstrap

资料下载地址: https://545c.com/f/45573183-1336822373-45bb4f?p7526 (访问密码: 7526)

WordPress原创插件:自定义文章标题颜色

插件设置截图 文章编辑时,右边会出现一个标题颜色设置,可以设置为任何颜色 更新记录:从输入颜色css代码,改为颜色选择器,更方便! 插件免费下载 https://download.csdn.net/download/huayula/89585192…

Xinstall揭秘:一键拉起服务如何助力App提升用户体验和下载转化率

在移动互联网时代,App的运营和推广显得尤为重要。而在这个过程中,如何提升用户体验和下载转化率成为了每个App运营者关注的焦点。今天,我们就来揭秘一下Xinstall的一键拉起服务,看看它是如何助力App提升用户体验和下载转化率的。 …

示例:WPF中如何处理TabControl页面绑定ItemsSource切换TabItem时UI数据没有持久保存的问题

一、目的:在WPF开发过程中,经常用到TabControl,也会遇到类似问题,用TabControl绑定数据源ItemsSource时,切换TabItem时,UI上的数据没有持久保存,本文介绍一种处理方式,可以做到缓存页…

解决学生技能短板:泰迪智能科技2024年中职大数据实验室,全面提升学生实践能力

一、中职院校现状及实验室建设背景 在当今信息化时代,大数据技术已成为国家战略发展的重要方向。中职院校作为我国职业教育体系的重要组成部分,肩负着培养高素质技术技能人才的重任。然而,目前我国中职院校在大数据教育方面存在以下问题&…

蓝桥强化宝典(4)Dijkstra

前言 Dijkstra算法(迪杰斯特拉算法),又称狄克斯特拉算法,是由荷兰计算机科学家Edsger W. Dijkstra于1959年提出的。该算法主要用于在加权图中查找从一个起始节点到所有其他节点的最短路径,解决的是有权图中最短路径问题…

在线教育数仓项目(数据采集部分1)

文章目录 数据仓库概念项目需求及架构设计项目需求分析系统数据流程设计框架版本选型集群规模估算集群资源规划设计 数据生成模块目标数据页面事件曝光启动播放错误 数据埋点主流埋点方式(了解)埋点数据上报时机埋点数据日志结构 服务器和JDK准备服务器准…

C++(入门1)

C参考文档 Reference - C Reference C 参考手册 - cppreference.com cppreference.com 第一个C程序 #include<stdio.h> int main() {printf("Hello C\n");return 0; }由上述代码可知C是兼容C语言 第一个C标准程序 #include<iostream> using names…

C#初级——枚举

枚举 枚举是一组命名整型常量。 enum 枚举名字 { 常量1, 常量2, …… 常量n }; 枚举的常量是由 , 分隔的列表。并且&#xff0c;在这个整型常量列表中&#xff0c;通常默认第一位枚举符号的值为0&#xff0c;此后的枚举符号的值都比前一位大1。 在将枚举赋值给 int 类型的…

[MySQL][深入理解隔离性][下][Read View]详细讲解

目录 1.Read View1.是什么&#xff1f;2.理解3.整体流程 2.RR与RC的本质区别1.当前读和快照读在RR级别下的区别2.RR与RC的本质区别 1.Read View 1.是什么&#xff1f; Read View就是事务进行 快照读 操作的时候生产的 读视图(Read View)&#xff0c;在该事务执行快照读的那一…

白嫖游戏指南,Epic喜加一:《暗影火炬城》

前言 Epic喜加一&#xff1a;《暗影火炬城》《暗影火炬城》简介&#xff1a; 前言 接下来有时间会分享一些游戏相关可以白嫖的资源&#xff0c;包括游戏本体、游戏素材资源等等。 有需要的小伙伴可以关注这个专栏&#xff0c;不定期更新哦&#xff01; 专栏&#xff1a;白嫖…

学习型组织:知识创造的 SECI 螺旋模型 —— 隐性知识和显性知识的转换

《创造知识的企业》的日本学者野中郁次郎用了 30 多年的时间跟踪日本企业的变化&#xff0c;揭示日本企业成功的奥秘。 在野中之前和之后&#xff0c;也有不少学者聚焦日本&#xff0c;但是&#xff0c;多数人看到的&#xff0c;只是优良的生产技术&#xff0c;企业和顾客、供…

【计算机网络】DHCP实验

一&#xff1a;实验目的 1&#xff1a;深入理解DHCP&#xff08;动态主机配置协议&#xff09;的工作原理和数据包交换过程。 2&#xff1a;掌握如何通过命令行释放和重新获取IP地址&#xff0c;并通过抓包软件分析DHCP消息的具体内容。 二&#xff1a;实验仪器设备及软件 硬…

数据挖掘-数据预处理

来自&#x1f96c;&#x1f436;程序员 Truraly | 田园 的博客&#xff0c;最新文章首发于&#xff1a;田园幻想乡 | 原文链接 | github &#xff08;欢迎关注&#xff09; 文章目录 3.3.1 数据的中心趋势平均数和加权平均数众数&#xff0c;中位数和均值描述数据的离散程度 &a…

推荐3款将相片变为动漫风格的免费AI工具推荐

toonme ToonMe是一款功能强大的在线和移动端应用&#xff0c;专门用于将照片转换成卡通风格图像。该工具利用先进的AI技术&#xff0c;能够快速识别照片中的面部特征&#xff0c;并进行智能处理&#xff0c;生成高清晰度的卡通肖像。 功能特点 ToonMe通过其内置的人工智能算法…

AJAX-XMLHttpRequest 详解

(创作不易&#xff0c;感谢有你&#xff0c;你的支持&#xff0c;就是我前行的最大动力&#xff0c;如果看完对你有帮助&#xff0c;请留下您的足迹&#xff09; 目录 前言 XMLHttpRequest 概述 主要用途 工作流程 示例代码 GET 请求示例 POST 请求示例 注意事项 工作…

Java集合——Array、ArrayList、LinkedList

1. ArrayList和Array的区别 1. 大小和自动扩容 Array&#xff1a;创建时指定大小&#xff0c;大小固定。若数组被创建&#xff0c;其大小不能更改 ArrayList&#xff1a;动态数组实现&#xff0c;可以动态增长或缩小。在不断添加元素时&#xff0c;ArrayList会自动进行扩容 …

模式Hash和history

vuerouter有两种路由模式Hash和history。区别&#xff1a;Hash为默认模式&#xff0c;url中包含一个#符号的哈希部分。优势&#xff1a;兼容性好&#xff0c;不需要后端服务器的特殊配置。缺点&#xff1a;不够美观&#xff0c;搜索引擎优化较差。History模式使用的浏览器的His…

Cmake生成的Xcode工程相对路径与绝对路径的问题

Cmake生成的Xcode工程相对路径与绝对路径的问题 文章目录 Cmake生成的Xcode工程相对路径与绝对路径的问题前言修改.pbxproj文件验证工程小结 前言 由于Cmake的跨平台的自动化构建的方便性以及他广泛应用于编译过程的管理&#xff0c;在开发过程中难免用到Cmake。我也使用Cmake…

CTF-NSSCTF[GKCTF 2021]

[GKCTF 2021]easycms 考察&#xff1a; 用扫描工具扫描目录&#xff0c;扫描到后台登录界面/admin.php 题目提示了密码是五位弱口令&#xff0c;试了试弱口令admin和12345直接成功了 任意文件下载 点击设计-->主题然后随便选择一个主题&#xff0c;点击自定义&#xff0…