Selenium面试题1

1.findElement  FindElements有什么区别?

 

首先,两个都是查找元素,都支持八大元素定位方法。findElement()得到的只有一个元素,如果根据提供的元素定位方式找不到,会报noSuchElement异常。

 

findElements()返回的是一组元素,所以我们需要根据能够找到一组元素的表达式去定位,返回一组元素我们可以放在集合里,这样我们就可以使用集合里面的迭代方法去遍历元素,拿到元素去做其他操作。

 

 

2.在执行脚本过程,如何实现当前元素高亮显示?

 

这个其实就是利用javaScript去修改当前元素的背景颜色来到达高亮显示的效果,

具体看文章:http://blog.csdn.net/u011541946/article/details/73751252

 

3.如何获取页面标题,悬浮文本和错误文本,并验证?

 

标题,我们可以通过driver.getTitle()方法来得到一个字符串,然后使用字符串的containts方法或者equals方法去进行断言。

 

悬浮文本(tooltip),一般是利用Actions类,然后鼠标悬停方法,然后通过getText()方法来得到这个tooltip字符串。

 

错误信息,直接把这个错误字段先进行定位,然后通过getText()方法拿到错误文本,主要的断言有包含,相等,不相等,不包含,以什么开头等。

 

4.selenium自动化测试中,你一般完成什么类型的测试?

 

      主要是冒烟测试和回归测试。回归测试主要写一些功能稳定,容易实现的场景,通过自动化手段去实现,节约测试时间。

 

 

5.你是如何管理你的测试用例并执行?

 

       写用例和管理并执行用例,我们都需要借助单元测试框架来实现,如果是Java语言一般有junitTestNG,如果是python,常见的有unittest

 

       就你实际情况,说一下。例如我使用TestNG比较多,需要配置testng.xml文件来实现测试用例的执行。有时候需要配置多个testng.xml去实现不同的任务场景。再展开,可能问你一下testng框架的知识点。例如,方法依赖,用例执行优先级,数据源驱动等。

 

6.关于自动化测试报告生成?

 

我个人一般用TestNG原生的测试报告,也有第三方叫reportNG的插件,不过我没有实际使用过。

Python下报告生成一般使用HTMLTestRunner.py

 

7. 了解或者使用过框架不?

 

类似的问题还有,你知道那些自动化测试框。

我们知道POM自动化测试框,还有关键字驱动框架。当然还有数据驱动框架,最近几年出的行为驱动框架。

 

8. 这个框架是你自己写的吗?

 

我自己设计过POM的框架和关键字驱动框架。

 

9.能不能介绍下你的框架

 

      把你自己POM的框架从上往下,树形结构画图出来,然后讲下有哪些层,哪些包,包下几个重点的类的作用和一些工具类说一下。用例如何执行,页面对象和元素定位放哪里,错误日志和截图如何处理,报告如何得到等。

 

 

结束语:

      Selenium面试的问题就整理到这里,肯定还有一些更难的问题没有整理出来,我觉得,你知道这五篇的面试题和答案,那么一般的selenium自动化测试的面试肯定没有问题。难一些的方面主要体现在框架设计方面,例如事件监听,框架有什么优点和缺点,未来有没有计划去改进。还有一部分是脚本执行和管理的问题,例如,脚本是不是在本地执行,能不能加快执行效率,做过脚本放Jenkins上持续集成配置吗等。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值