1、以你做过的项目,举例来说一下你的自动化测试是怎么做的?

参考答案:就拿简历上的ecshop项目来说吧,在编写脚本前,我们会对系统进行评估,确认这个系统可不可以实现UI自动化,如果可以的话,就筛选出能实现自动化测试的用例,一般优先把冒烟测试用例的转为成脚本。我们是用selenium工具来实现自动化,采用python脚本语言,基于unittest框架进行用例的编写。比如,下单这个功能的脚本,我们是这样做的:首先,我们会构建一个测试工程,测试工程包含public部分(这里封装脚本公共的内容,比如,打开浏览器,登陆等操作),testCases(存放测试用例),reports(存放测试报告),runAllCases(用于运行项目自动化用例),脚本调试完后,我们会用jenkins持续集成工具(定时),设置脚本每天晚上8点跑一遍脚本,跑完后生成html格式的自动化测试报告。

自动化脚本失败的原因:

1)、可能是测试环境的网络不稳定;

2)、开发修改了代码没通知到测试人员修改脚本;

3)、开发引入了新的问题。

2、测试脚本用到了哪些技术?

参考答案:元素定位,表单切换,模块调用,JS定位等等,脚本是基于python自带的unittest单元测试框架,采用了模块化方式编写,把复用性高的操作封装到公共模块中,如果脚本需要用到对应的操作,直接调用就可以了,如果元素发生变化,只需要调整元素封装的代码就可以了,提高测试用例的可维护性。

xpath和CSS定位方式的区别:

1、语法不一样;

2、CSS定位比较稳定。

3、脚本怎么组织的?(编写自动化脚本,你的思路是什么?)

参考答案:构建测试套,测试套包含public部分(包括测试用例中公共的部分),testCases(存放测试用例),reports(存放测试报告),runAllCases(用于运行项目自动化用例),测试脚本使用的是python的unittest单元测试框架组织管理,将所有测试脚本通过单元测试框架组织起来运行,这样做的好处是,维护起来方便,可以生成测试html格式的测试报告,报告包括:测试用例,通过数,失败数。

4、自动化率多少?

参考答案:一般是30%到40%,这个没有固定的,我们是优先将优先级高的测试用例,比如,冒烟测试的测试用例转换成自动化脚本的,后面有时间的时候再不断补充,能写多少写多少。

5、你们自动化脚本的通过率是多少?(注意这个题目的意思)

参考答案:这个说不准,如果没有什么异常情况,自动化脚本都是100%运行通过;如果异常情况比较多,比如出现测试环境不稳定,或者开发修改了代码没通知到测试人员及时修改脚本,又或者开发引入了新的问题等等,自动化脚本通过率可能80%都不到。

6、用那个方法判断元素是否显示?

is_displayed()

7.你曾经都写过多少自动化测试用例?

参考答案:这个具体没有算过。但是只要有时间,模块稳定的功能都会写。就拿上个项目来说,自动化测试用例大概写了将近有70-80条这样子吧。

8、python3 的数据类型有哪些? (set集合 不重复的列表)

不可变数据(四个):int (整型)、float (浮点型)、str(字符串)、Tuple(元组)、Sets(集合);

可变数据(两个):List(列表)、Dictionary(字典)。

9、unittest框架了解吗?

参考答案:unittest框架,由setUp()–环境预置,testCase()— 测试用例 tearDown()----环境恢复,三大部分组成,unittest框架可组织执行测试用例,并且提供丰富的断言方法,判断测试用例是否通过,最终生成测试结果。

10、怎样用python连接mysql数据?

参考答案:我们之前主要是用python语言来写web端的自动化测试脚本,没有连过mysql数据库,到时候工作需要的话,学一下很快就能上手了。

PS:确实没接触过的知识,先告诉人家,你确实没做过,如果以后工作需要,你能够很快学会。

11、用python做过接口测试自动化测试吗?

参考答案:我们之前主要是用python语言来写web端的自动化测试脚,接口是用Jmeter来做的,用python写接口的脚本也在网上学习过,但是工作中没用用过,到时候工作需要的话,再学一下应该没问题。

12、元素定位失败的原因?

1)、页面的元素未加载完成

2)、元素的属性值不唯一

3)、元素的属性值是动态值

4)、元素在另外一个表单

5)、元素在另外一个页面

13、自动化脚本,如何切换不同的浏览器?

参考答案:使用对应的浏览器驱动,然后在脚本中更换不同的浏览器。

14、你的python水平很一般啊?(遇到这种否定你的问题,一定不能虚!)

参考答案:我现在掌握的python知识,做ui层的自动化测试是可以的,代码的封装,调用这些都没问题;我一般是会做,但不是很会用文字描述出来,我以注意到这点,现在也在加强提升自己的总结能力。

PS—重点强调:凡是遇到被面试官否定的,都要想办法怼回去,输也要输得精彩些,但是,怼回去的时候,要注意语气,要有礼有节,不卑不亢。

15、python怎么定义一个函数,怎么定义一个类?

def 函数名:函数体

class 类名:属性,方法

16、有些元素,在谷歌浏览器上能定位,在火狐浏览器上定位失败,是什么原因呢?

参考答案:因为不同浏览器的内核不一样,他们的CSS样式不一样。

17、如何提高selenium脚本的执行速度?

参考答案:

1)、提高网速;

2)、少用sleep,多用隐式等待或显式等待(强制)。

1、元素定位的方式有哪些?

id定位: find_element_by_id()

name定位: find_element_by_name()

class_name定位:find_element_by_class_name()

tag_name定位:find_element_by_tag_name()

link_text定位:find_element_by_link_text()

partial_link定位:find_element_by_partial_link_text()

xpath定位:find_element_by_xpath()

css_selector定位:find_element_by_css_selector()

2、如何切换iframe?

switch_to.frame()

switch_to.default_content()

3、如何切换窗口?

switch_to.window()

4、鼠标悬停的方法是什么?

shezhi=dr.find_element_by_link_text(“设置”)

ActionChains(dr).move_to_element(shezhi).perform()

5、如何定位下拉框?

sq=dr.find_element_by_name(“sel_question”)

Select(sq).select_by_value(“motto”)

6、如何获取弹出警告框的text?

#获取警告框的文本信息

t1=dr.switch_to.alert.text

print(t1)

#点击确定

dr.switch_to.alert.accept()

#取消警告框

#dr.switch_to.alert.dismiss()

7、做自动化做了多久?

参考答案:一直都在做,通常只要有时间,模块稳定的功能都会写。断断续续的做了一年多了。

8、selenium的工作原理是什么?

参考答案:selenium的工作原理是什么:selenium工作原理涉及三个部份,分别是浏览器、驱动器、代码; 代码发送请求给驱动器,驱动器解析请求,并在浏览器上执行相应的操作把执行结果返回给代码

9、什么样的项目适合做自动化?

参考答案:项目周期长,版本多,界面元素稳定的项目。

10、selenium如何做兼容性测试?

参考答案:使用对应的浏览器驱动,然后在脚本中更换不同的浏览器。

11、为什么会生成HTML报告?

参考答案:使用了HTMLTestRunner第三方工具包来实现的

12、脚本运行出错,应该怎样定位,说出分析过程

生成报告,从报告中分析:网络,开发修改,引入新的问题(从断言中分析)

参考答案:运行结束之后我们会得到一个测试报告,我们根据测试报告先定位一下是脚本的原因还是程序的原因,一般来说脚本的原因在报告中都会显示出哪一行代码出错了,如果是程序的原因通常来说都是断言的问题。

13、如果系统有验证码,怎么做自动化?

参考答案:

1)、去掉验证码。

2)、设置万能验证码。

3)、用python调用OCR模块,自己写代码来识别。这种方法可以识别出简单的验证码。

4)、调用第三方平台提供的接口进行识别。比如:斐斐打码,尖叫数据这些平台接口。

14、setUp(),tearDown()和setUpClass(),tearDownClass()的区别?

参考答案:当测试用例有多个,setUp()和tearDown()就会被执行多次;不管测试用例有多少个,setUpClass()和tearDownClass()只会被执行一次(在全局的开关的情况,)。

15、python的第三方模块/标准库有哪些?

time

random

unittest

selenium

sys

HTMLTestRunner

datetime

需要导入的,自带的不需

16、python的pass语句的作用是?

参考答案:占位符,当方法没有内容时,防止出现语法错误。跳过,执行去下一个

17、自动化写过哪些模块的脚本?

参考答案:主要是把冒烟测试的用例转化为脚本,比如,我这个xx商城系统,做自动化的模块有后台的上架商品,订单查询,添加团购活动,促销活动,前台的搜索商品,添加商品到购物车,下单等等。

18、常见的排序算法?

参考答案:冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序等.

16、元素是动态变换的,如何定位?

参考答案:使用css或者xpath先定位到其上级不变的元素,然后再定位到该元素即可

20、隐藏元素是否可以操作?

参考答案:隐藏元素只能够定位到,无法对其进行操作 如果想要对隐藏元素进行操作,我们需要使用js语句对其操作

如果你

①从事功能测试,想进阶自动化测试

②在测试界混了1、2年,依然不会敲代码

③面试大厂却屡屡碰壁

我邀你进群吧!来吧~~测试员,313782132(Q群里有技术大牛一起交流分享,学习资源的价值取决于你的行动,莫做“收藏家”)获取更多大厂技术、面试资料

如果对python自动化测试、web自动化、接口自动化、移动端自动化、面试经验交流等等感兴趣的测试人,可以关注微信公众号:【伤心的辣条】,获取软件测试工程师大厂面试资料!

最后:

凡事要趁早,特别是技术行业,一定要提升技术功底,丰富自动化项目实战经验,这对于你未来几年职业规划,以及测试技术掌握的深度非常有帮助。

内容来源于网络如有侵权请私信删除

python移动自动化测试面试视频_Python-自动化测试面试相关推荐

  1. python自动化测试常用库_Python自动化测试常用库整理

    今天花了一些时间,过了一下这几年自己用Python开发的自动化测试框架,然后将其中常用到Python库抽出来,简单整理了一下它们的用处.我觉得,只要掌握了这些常用的Python库,足以应对大多数自动化 ...

  2. python爬app西瓜视频_Python爬虫下载西瓜视频

    Python爬虫下载西瓜视频 1.简介 由于西瓜视频免费,全站视频都可以下载,需要指定详情的视频链接,默认720P,电影内存1G多 2.Python 清单文件 requests==2.21.0 lxm ...

  3. python批量下载bilibili视频_python 批量下载bilibili视频的gui程序

    运行效果: 完整代码: # !/usr/bin/python # -*- coding:utf-8 -*- # time: 2019/07/02--08:12 __author__ = 'Henry' ...

  4. python有什么用途视频_Python分析6625条视频,告诉你“打工人”凭什么能刷爆全网...

    原标题:Python分析6625条视频,告诉你"打工人"凭什么能刷爆全网 CDA数据分析师 出品 作者:Mika 数据:真达 后期:Mika [导读] 今天教大家用Python分析 ...

  5. python自动化面试提问_Python自动化测试笔试面试题精选

    前言 随着行业的发展,编程能力逐渐成为软件测试从业人员的一项基本能力.因此在笔试和面试中常常会有一定量的编码题,主要考察以下几点. 基本编码能力及思维逻辑 基本数据结构(顺序表.链表.队列.栈.二叉树 ...

  6. python爬虫面试问题_Python爬虫面试总结

    ## Python爬虫面试总结 1. 写一个邮箱地址的正则表达式? [A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$ 2. 谈 ...

  7. python人像录制加声音_Python自动化测试入门必读

    入门自动化测试必读 自动化测试概念 自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程.通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期 ...

  8. python自动化看什么书_python自动化测试书籍

    求推荐下python进行软件自动化测试的书籍 虽然说python里有testsuite之类的包.不过自动化测试其实与编程无关.主要是选择合适的测试用例和测试方法.与业务有关. 自动化测试框架也容易搭建 ...

  9. python+appium判断元素存在_python自动化测试应用--Appium元素篇

    1.1概要 本篇将对和界面元素相关的内容做讲解,比如,查找元素的几种常见方法,还将介绍如何查看app界面上的元素去做定位,最后还将新手经常遇到的问题做个简单的回答. 1.2 查找app界面元素的工具 ...

  10. python自动化测试的工具_python自动化测试(3)- 自动化框架及工具

    3   基本示例 如下示例也来自于官方文档 basic_demo.py: # coding:utf-8 """ 基本的自动化测试脚本 basic_demo.py &quo ...

最新文章

  1. Github最强算法刷题笔记.pdf
  2. 主瓣,旁瓣,栅瓣概念解析
  3. thymeleaf th:href url传递多参数
  4. excel制作一个信息录入系统_制作Excel仓库入库单,一键完成数据录入、计算及保存操作...
  5. Tensorflow -mofan1
  6. android 火箭动画,利用动画模拟火箭发射场景
  7. 社会计算经典谈——书籍销量预测
  8. c语言qsort函数对结构体的一级排序,sort和qsort函数对结构体的二级排序
  9. ubuntu java 中文_java部署ubuntu后中文显示问号问题
  10. Iphone5的机身4S的配置 山寨版“iPhone 5S”上手视频
  11. Python打包成exe.文件教程分享
  12. 水晶报表for java_水晶报表(学习笔记)
  13. 【BZOJ 1433】 [ZJOI2009]假期的宿舍
  14. 大学生破译周鸿祎手机号 李开复放“橄榄枝”
  15. android 重力感应代码,Android编程实现的重力感应示例代码
  16. 指纹支付 java lang6_支付宝;超6成人使用指纹、刷脸支付,网友;喜欢用密码!...
  17. kubernetes 核心术语
  18. 好好学习天天向上之InfoPath学习系列(一):Form Services与InfoPath初识
  19. 热经-北京中地时空数码科技有限公司-研发工程师(WEBGIS方向)
  20. 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一

热门文章

  1. 蜜拓蜜董事长参加《2018.让世界爱上中国造》国际高端论坛
  2. 搭建管理驾驶舱--以结果倒逼过程管理
  3. 大闻桌面 v0.08
  4. 电子商务数据仓库架构
  5. oracle执行存储过程参数,Oracle 执行存储过程四种方法(带参数 不带参数)
  6. WebService CFX 实现
  7. Pinyin4j.jar介绍中文转拼音
  8. 大学生网页制作期末作业——html+css+javascript+jquery旅游官网6页 html大学生网站开发实践作业 web网页设计实例作业
  9. 小苏java学习之路
  10. python中and not是什么意思,python中的not,and, or