前言:
这篇文章是为大家在网上收集整理的软件测试面试题目及答案。无意冒犯各位原创作者,如果在您的博客或者写作平台有相似问题答案可以跟我说,我给您链接加上,我只是为了方便以后自己需要的时候刷一刷,不用在到处找题。
一、Web自动化测试面试题
1.Selenium中hidden或者是display = none的元素是否可以定位到?
不能,可以写JavaScript将标签中的hidden先改为0,再定位元素。
2.Selenium中如何保证操作元素的成功率?也就是说如何保证我点击的元素一定是可以点击的?
- 添加元素智能等待时间 driver.implicitly_wait(30)
- 添加强制等待时间(比如python中写 sleep)
- try 方式进行 id,name,clas,x path, css selector 不同方式进行定位,如果第一种失败可以自动尝试第二种
3.如何提高Selenium脚本的执行速度?
代码优化,多任务,分布式部署都是可以提升脚本执行速度的。
4.用例在运行过程中经常会出现不稳定的情况,也就是说这次可以通过,下次就没办法通过了,如何去提升用例的稳定性?
- time.sleep( )
- driver.implicitly_wait(30)
- 多用 try 捕捉,处理异常
5.你的自动化用例的执行策略是什么?
自动化测试与软件开发本质上是一样的,利用自动化测试工具,经过测试需求分析,设计出自动化测试用例,从而搭建自动化测试的框架,设计与编写自动化脚本,验证测试脚本的正确性,最终完成自动化测试测试脚本(即主要功能为测试的应用软件)并输出测试结果。
6.自动化测试的时候是不是需要连接数据库做数据校验?
从数据库层面来进行数据校验可以更方便验证系统的数据处理方面是否正确,数据处理逻辑正常后,UI层面上的校验也是需要做的。
7.id,name,class,xpath, css selector这些属性,你最偏爱哪一种,为什么?
css 、xpath 几乎所有的元素都可以定位到,但是它们的短处在于页面上更改了元素后位置很容易改变,所以首先使用的还是id或者name等。
8.如何去定位页面上动态加载的元素?
触发动态加载元素的事件,直至动态元素出现,进行定位
9.如何去定位属性动态变化的元素?
xpath或者css通过同级、父级、子级进行定位
10.点击链接以后,Selenium是否会自动等待该页面加载完毕?
会的
11.什么是page object设计模式?
简单来说,就是把页面作为对象,在使用中传递页面对象,来使用页面对象中相应的成员或者方法,能更好的体现面向对象语言(比如java或者python)的面向对象和封装特性。
12.如何在定位元素后高亮元素(以调试为目的)?
用JavaScript等脚本来重置元素属性,给定位的元素加背景、边框。
13.什么是断言?。
断言是指定一个程序必须已经存在的状态的一个逻辑表达式,或者一组程序变量在程序执行期间的某个点上必须满足的条件。
14.你觉得自动化测试最大的缺陷是什么?
- 不稳定
- 可靠性
- 不易维护
- 成本与收益
二、APPUI自动化测试面试题
1.Android APP 内存不足时, 系统如何结束进程获得内存?
系统优先结束被挂起(暂停)的进程,释放内存。
2.APP 测试常见的严重问题有哪些? 分别引起的原因有哪些?
常见的有 crash、ANR(应用无响应、卡死),一般由设备碎片化、网络波动大、内存泄漏、代码编写错误。
3.请简单介绍你曾使用过的一款 APP 自动化测试工具 ?
开放性问题,带点主观意见
- 对比其他熟悉的自动化工具的优缺点。
- 自动化的简要方案(简要的同时关键内容请具体)。(提示: appnium 等)
4.Android 测试与 web 测试有什么区别?
相同点:
- 设计测试用例均依据等价类、边界值等方法,测试原理相同;
- 大多数都采用黑盒测试方法来验证业务功能;
- 需要检查界面布局、风格和按钮是否美观、统一等(UI测试);
- 测试页面载入和翻页的速度、登录时长是否溢出等问题(性能测试)
- 测试应用系统的稳定性;
不同点:
- 手机作为通信工具,通信等一些行为会对 APP产生(中断测试)。
- 手机用户对 app 产品的安装卸载操作:从上一版本/上两个版本直接升级到最新。
- web 自动化测试使用的工具较常用的是 selenium,而 android手机自动化测试比较常用的自动化工具是 monkey、monkeyrunner、Appium(测试工具不一样)
5.app 测试有哪几种环境?
- 本地环境: app 安装的手机环境和电脑搭建的自动化测试环境(比如安卓 SDK 等
等) 。 - 服务器环境:war 包部署的服务器,服务器可以通过浏览器访问,也可以通过 app
去访问。(访问的是 web 程序的接口&#