自动化测试面试题

1、接口自动化和web自动化有多少case?覆盖率是多少?全部执行完要多久?
接口自动化测试case数是根据接口数而定,100个接口,接口自动化case大概在2000-3000之间。接口自动化覆盖率可达100%;web自动化测试case根据业务用例而定,10000个功能测试用例,web自动化用例大概2000-3000个左右,覆盖率一般在30%左右。所有用例全部执行完成30-60分钟左右;
根据自己具体项目回答

2、接口自动化测试怎么做?web自动化测试怎么做?或者自动化测试怎么做?
(1)项目组做自动化的可行性分析,自动化率能够实施到什么程度
(2)调研测试团队对于自动化技术的程度,一般会伴随着demo演示(selenium, rf, requests等)
(3)计划制定,自动化测试框架搭建,逐步实施,发现框架问题并改善
制定计划,提取或编写自动化测试用例,leader编写自动化测试框架,组员编写和调试自动化测试脚本,无人值守jenkins,脚本维护
(4)把自动化流程化,框架出使用文档和规范文档
(5)持续不断的完善框架
(6)把自动化标准推广到其他项目上

3、什么是POM模式?为什么要使用它?
PMO模式:全称page object model,简称PO,页面对象模型。意思是把一个页面当成一个对象,页面的元素就是对象的属性,页面的操作就是对象的行为(方法)。一般情况下PO分三层架构:基础封装层Basepage、PO页面对象层、TestCase测试用例层。
使测试用例更简单,更清晰,把很多的业务操作封闭到PO页面对象层,用例只需要调用即可。如果页面有变动,只需要修改PO页面对象层的属性即可。增加代码的可维护性。

4、对数据驱动和关键字驱动的理解?
数据驱动是从数据文件(excel、CSV、YAML、数据库)读取输入、输出数据,然后通过变量传入自动化用例中。在整个过程中,数据的读取、测试状态、测试信息全部在测试用例里面,测试数据都在数据文件中,通过修改数据达到驱动自动化测试用例执行的方式叫数据驱动。
关键字驱动是从面向对象的思维出发,同样的业务逻辑会封装成一个函数,这个函数名就叫关键字,不同的关键字实现不同的业务逻辑,当所有的业务逻辑都可以通过关键字来实现的时候,就是关键字驱动框架。
RF就是关键词驱动;
一般情况下企业都是数据驱动+关键字驱动一起使用

5、web自动化测试用例如何设计?如何提高web自动化用例脚本的稳定性?
自动化用例主要是从功能测试用例中提取的冒烟用例和回归测试用例,提取需求遵循以下原则:
(1)优先覆盖核心功能用例,核心流程用例(最重要)
(2)尽量不要选复杂的用例
(3)选取一些重复执行的用例
(4)一般选取正向用例

如何提高稳定性:
(1)尽量使用相对路径定位元素
(2)定位元素需要封闭显示等待
(3)用例和用例之间尽量避免依赖
(4)加入用例失败重跑机制
(5)自动化测试环境与其他环境分开

6、举例说明在自动化测试过程中碰到过哪些异常?用到了哪些python库?

异常:
NoSuchElementException 没有如此元素
NoSuchAttributeException 没有如此属性
NoSuchoFrameException 没有如此框架
ElementNotVisibleException 元素不可见(style.display:none)
ElementNotSelectException 元素不可选
TimeOutException 元素超时
ArrayIndexOutofException 数组下标异常
TypeException 类型异常

Python库
Webdriver, webdriverWait, Os, xlrd(用于读取Excel文件), xlwt(用于写入Excel文), time, unitest, logging, sys, htmltestrunner, json, CSV, jsonpath, yaml, requests, re, pytest, allure, pymysql

https://zhuanlan.zhihu.com/p/670628843

7、自动化测试过程中,遇到了哪些问题?如何解决的?
(1)元素定位不到
(2)自动化测试用例出现误报(解决参考上面提高稳定性)
(3)每一次自动化测试的结果会被覆盖
(4)数据库校验(对数据库结构非常清晰)

8、ui行货用什么方式定位元素?当元素定位不到时如何处理?
8大定位方式:id, class, xpath, css, link text, partial link text, tag name, name

9、在上一家公司做自动化测试用的什么框架?
python + selenium + unittest/pytest + ddt/parameters + htmltestrunner/allure + jenkins
rf + selenium2library
python + requests + pytest + parameters + allure +jenkins + yaml

10、自动化中有哪三类等待?它们有什么特点 ?
线程等待: thread,建议少用,容易降低代码运行速度
隐式等待:全局等待
显示等待:一般会和一个匿名函数一起使用,一般用于结合定位元素的封装

11、在执行脚本过程,如何实现当前元素高亮显示?
必做,利用javascript去修改当前定位元素的style,在style里面加入border:3px red solid样式

12、在现在基础上给你一个新的业务线,怎么做接口自动化?
首先熟悉新的业务线接口的业务,然后熟悉已搭建好的接口自动化测试框架,在当前的框架里加入符合框架的接口自动化的测试用例即可,并根据实际情况可以提出一些对框架的改进建议。

13、接口自动化测试框架中,接口关联是怎么处理的?
(1)通过一个yaml文件来独立的保存所有的中间提取的变量,这个变量在执行用例之前清空。conftest
(2)在测试用例的yaml文件中通过关键字extract提取变量:json提取和正则表达式提取
(3)在一下个接口通过{{}}或${}或热加载(yaml文件可以直接调用python方法)方式取值

14、Requests中的Session会话管理的作用是什么?
因为很多接口都需要使用cookie或session来记录登录状态,而很多接口必须要有这个登录状态才可以请求成功,Requests中的Session会话管理的作用就是自动记录cookie和session的登录状态

15、接口自动化测试中断言是如何实现的?
把断言封装成一个方法,这个方法会读取yaml文件中的validate字段,包括断言的方式和断言的数据,然后在后台实现了断言,并且体现在报告中。框架封装完成后不需要写任何python代码就可以实现断言。
功能测试不需要写任何python脚本,只需要写yaml格式的测试用例即可实现接口自动化。

16、接口自动化测试框架中动态参数接口、加密接口、签名接口是怎么处理的?
热加载

17、接口自动化测试框架是如何搭建的?

(1)框架文件架构
commons 封装公共的方法,比如请求、日志、yaml文件的处理等
datas 用于数据驱动
hotloads 热加载文件
reports
log
testcase 分模块管理
config.yaml 配置文件
extract.yaml 中间变量
run.py 全局的执行文件

(2)优势
a.采用yaml作用测试用例,对用例做了严格的规范,name,request(method, url), validate
b.支持多种请求方式和传参方式
get:params
post:表单和json
文件上传
同时内置MD5,base64,签名加密算法
c.支持轻量级的接口关联,并且支持正则和Json提取
d.支持热加载(在代码执行过程中自动的去yaml里面执行外部函数)
e.支持多种断言方式:相等、包含、数据库断言
f.支持yaml数据驱动
g.支持多环境切换

18、接口自动化回归过程中有没有发现什么问题?取得了怎样的效果和收益?

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,634评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,951评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,427评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,770评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,835评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,799评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,768评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,544评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,979评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,271评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,427评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,121评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,756评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,375评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,579评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,410评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,315评论 2 352

推荐阅读更多精彩内容