1.你们自动化测试使用的代码框架是什么样的

我们使用的测试框架以数据驱动测试为思路,

在unittest与ddt基础上进行二次封装,实现了

代码元素分离、代码数据分离、selenium二次封装,日志、

批量执行用例生成报告、定时执行用例等功能

代码框架分为:用例模块、数据模块、公共方法模块、执行模块、公共配置等

2.你们在写代码时都封装过哪些方法

1.封装元素操作相关的方法,比如:点击、输入、获取文本、上传文件等

2.封装读取元素信息的方法,读取ini文件中的元素信息

3.封装读取excel数据的方法

4.封装打印日志的方法

3.自动化测试一般在什么时候执行

1.自动化测试适合的项目:项目功能比较稳定、迭代周期适中测试人员具备自动化测试能力

2.自动化测试可以覆盖哪些功能,覆盖率多少:可以覆盖项目中的大多数功能的正常和异常场景,覆盖率可以达到40%-60%

3.一般用于测试开始时的冒烟测试或项目上线前的回归测试

4.自动化测试的优缺点

优点:1.可以在较短的时间执行更多测试,提升测试效率
2.可以快速执行冒烟测试或回归测试,节省时间成本

缺点:1.相对于手工测试,自动化测试覆盖率较低,测试不全面
2.手工测试在测试一些复杂场景时,比自动化测试更可靠

5.假如给你一个项目,说一下你要怎么样开展自动化测试

1.判断当前项目是否适合做自动化测试:1.项目比较稳定 2.非金融相关项目

2.从功能测试用例中挑选出可以被自动化实现的用例

3.设计代码框架、封装基础操作方法、封装日志方法、读取ini配置文件方法等

4.将页面元素定位信息收集到ini配置文件中

5.按照功能测试用例中的步骤,编写自动化测试用例,使用封装好的方法,调用ini中的元素信息

6.在excel中设计测试数据,封装读取excel数据的方法,将测试数据加入到用例中

7.统一执行用例,并生成报告,根据脚本执行情况进行调优

6.讲一下用到了unittest中的哪些功能

1.testCase 测试用例 :setUp() test_*() tearDown()

2.testSuit 测试套件:用例的集合,将用例添加到套件中可以实现批量执行

3.HTMLTestRunner 测试执行器:执行测试套件,并生成测试报告

4.ddt 数据驱动测试,可以通过ddt将测试数据传到测试用例中

7.你在做自动化测试的时候都用到了哪些工具

pycharm+python3.6+selenium+xlrd+unittest+ddt+ini

8.你在做自动化测试时遇到过哪些问题,你是怎么解决的

1.元素定位不到的问题,或者动态元素,解决办法:切换其他定位方式,当常规定位方法无效时可以使用模糊定位,分层定位等方式,检查是否存在嵌套网页,是否依赖操作步骤。

2.项目中的业务问题,比如OA项目中新建合同脚本需要使用订单数据,订单数据需要依赖产品,产品依赖联系人数据,需要按照业务逻辑顺序设计脚本。

3.断言设计,部分功能无法直接通过页面中的文本来判断是否执行通过,需要查询数据库,或者其他操作来作为判断依据。

9.selenium控制浏览器的原理是什么

selenium为代码包,提供了控制浏览器的方法

使用python编写脚本,调用selenium中控制浏览器的方法,执行脚本时,通过浏览器驱动(chromedriver)

控制浏览器按照脚本中的步骤执行

10.常用的定位元素方法有哪些

精确定位:id、name、xpath、css_selector

模糊定位:link_text、tag_name、class_name

分层定位:先定位到某个元素,再从该元素的范围内进行第二次定位

自动化测试常见面试问题相关推荐

  1. js 计算任意凸多边形内最大矩形_题库 | 计算机视觉常见面试题型介绍及解答 第 7 期...

    - 计算机视觉 -为什么说 Dropout 可以解决过拟合?(1)取平均的作用: 先回到标准的模型即没有 dropout,我们用相同的训练数据去训练 5 个不同的神经网络,一般会得到 5 个不同的结果 ...

  2. Hive常见面试问题(持续更新)

    Hive常见面试问题 目录 Hive 内部表和外部表的区别,以及各自使用于哪种环境?Hive和传统数据库的区别? HiveRc 文件? Hive 分区? Hive 分区过多有何坏处以及分区时的注意事项 ...

  3. 面经——C/C++常见面试知识点总结附面试真题

    参考:C/C++ 面试题 作者:zhaouc 发布时间: 2015-02-15 15:51:00 网址:https://blog.csdn.net/zhaouc/article/details/438 ...

  4. java面试常见面试问题_Java面试准备:15个Java面试问题

    java面试常见面试问题 并非所有的访谈都将重点放在算法和数据结构上-通常,访谈通常只侧重于您声称是专家的语言或技术.在此类访谈中,通常没有任何"陷阱"问题,而是它们要求您利用内存 ...

  5. spring常见面试问题_Spring面试问题

    spring常见面试问题 另外,请查看我们最新的文章69Spring面试问题与解答–最终清单 . 1)什么是春天? 回答: Spring是控件和面向方面的容器框架的轻量级反转. 2)解释春天? 回答: ...

  6. 【C++基础】常见面试问题(二)

    1. 指针和引用的区别 指针保存的是所指对象的地址,引用是所指对象的别名,指针需要通过解引用间接访问,而引用是直接访问 指针可以改变地址,从而改变所指的对象,而引用必须从一而终: 引用在定义的时候必须 ...

  7. Java常见面试知识点:继承、接口、多态、代码块

    问题:Java常见面试知识点:继承.接口.多态.代码块 答案: 1.继承 继承中构造方法的访问特点 子类中所有的构造方法默认都会访问父类中无参的构造方法 为什么? • 子类在初始化的时候,有可能会使用 ...

  8. 视频教程:Java常见面试题目深度解析!

    视频教程:Java常见面试题目深度解析! Java作为目前比较火的计算机语言之一,连续几年蝉联最受程序员欢迎的计算机语言榜首,因此每年新入职Java程序员也数不胜数.很多java程序员在学成之后,会面 ...

  9. Linux底层IIC 总线的理解、调用函数以及常见面试问题

    对 IIC 总线的理解.调用函数以及常见面试问题 一.IIC 总线概述: IIC 即Inter-Integrated Circuit(集成电路总线) I2C总线是PHLIPS公司推出的一种串行总线, ...

最新文章

  1. 如果成为一名高级安卓开发_什么是高级开发人员,我如何成为一名开发人员?
  2. nginx的gzip压缩功能
  3. a:hover代表什么含义_板式热交换器型号该如何看?代表什么含义?
  4. 改变textFiled中placeholder的字体颜色的方法以及不想光标在textView的最左边设置方法...
  5. 网络爬虫:使用多线程爬取网页链接
  6. 【SpringBoot集成ElasticSearch 01】2️⃣ 种方式的高级客户端 RestHighLevelClient 使用(依赖+配置+客户端API测试源码)
  7. OpenCV-图像的基本操作-01
  8. 大学计算机在线答题,大学计算机基础网上考试答题卷理论部分(含答案)
  9. 如何识别新加的计算机硬盘,图文解说win10系统无法识别新加的机械硬盘的具体技巧...
  10. frontend-maven-plugin插件问题解决
  11. 基于shiro+jwt的真正rest url权限管理,前后端分离
  12. 【转】 Oracle中分区表的使用
  13. json parse
  14. YUM服务那些事---详解YUM服务
  15. 【超级干货必看】如何从零开始学PCB设计?
  16. 常见的网站运维面板汇总集合(国内外流行)
  17. U盘中毒文件被隐藏?U盘中毒了怎么恢复文件
  18. 空气清爽才是真正的上班的地方
  19. 启动某个程序的时候,提示端口8000被占用解决方式
  20. 超微服务器X11DAi-N主板简介及实际应用

热门文章

  1. Java零散知识点记录——类的方法
  2. uniapp开发APP之真机调试
  3. 互联网/计算机 校园招聘信息大全!
  4. Ubuntu下Apache重启错误:Could not reliably determin解决
  5. 这样去做信用贷款违约预测项目,效果提升明显
  6. 最新弹幕播放器源码/支持对接苹果+蓝光接口API
  7. 阿里云服务器ECS搭建后台(Windows Server 2012R2)
  8. cocos2dx-lua项目的构建、编译细则
  9. 沐风:企业网络营销赚钱关键设计
  10. python数据分析实验报告_使用 Python 3 进行气象数据分析