首页 > 华云数据-无锡-测试-面经-过了
头像
小测试再试试
编辑于 2021-08-17 12:15
+ 关注

华云数据-无锡-测试-面经-过了

感受:就是很快,一面周五,二面周一,三面周一下午。面试的小姐姐小哥哥感觉很年轻,很温柔。
一面:唠家常
二面:唠家常
三面:围绕简历
1.python的类型有哪些?
int 整型bool 布尔 strintg 字符串list 列表tuple 元组dict 字典

2.Java的范型是怎么实现的?

3.测试流程?
4.自动化工具的原理?

appium

一、原理

1.调用Android adb命令完成基本系统操作

2.android上部署bootstrap.jar

3.bootstrap.jar通过forward端口和pc建立连接

4.pc端分析命令,通过forward端口传给bootstrap.jar

5.bootstrap.jar接收请求,将命令传给uiautomator

6.uiautomator执行命令

二、需要引入哪些库

time、os、unitest、appium webdriver、HTMLTestRunner

selenium

一、原理

1.代码:通过webdriver协议将代码发给webdriver驱动

2.驱动:驱动将命令发给浏览器

3.浏览器:浏览器执行命令

二、需要引入哪些库

time、os、unitest、webdriver、HTMLTestRunner


5.浏览器访问url的过程?
当输入url时,浏览器作为客户端首先会请求DNS服务器,通过DNS获取相应的域名和IP(应用层)通过IP地址找到对应的服务器,
浏览器先查看浏览器缓存-系统缓存-路由器缓存,如果缓存中有,会直接在屏幕中显示页面内容。若没有则在发送http请求前,需要域名解析(DNS解析),解析获取相应的IP地址
然后建立TCP连接【三次握手,第一次握手:建立连接时,client发送syn包到server
第二次握手:server收到client的syn包,使用ack回复client的syn包,同时server也会发送syn包.所以server回复ack+syn
第三次握手:client收到server的syn+ack包,使用ack确认服务器的syn包
至此,完成三次握手,client与server完成TCP连接的建立】
浏览器向服务端发送http请求包(应用层 -> 传输层 -> 网络层 -> 数据链路层))
服务端接受到http请求包后开始处理请求包(数据链路层 -> 网络层 -> 传输层 -> 应用层)
在服务器收到请求之后,服务器调用自身服务,返回响应包浏览器接收到响应包后开始进行页面的渲染

6.测试方案编写内容有哪些?

1、引言(含a、编写目的;b、预期读者;c、参考资料);

2、测试范围;

3、测试策略(根据不同的测试类型考虑不同的测试方法)

测试类型:

功能测试;
兼容性测试;
性能测试;
接口测试;
安全性和访问控制测试;
数据和数据库完整性测试;
集成测试;
用户界面测试;
负载测试;
强度测试;
容量测试;
故障转移和安装测试;
配置测试;
安装测试等。
功能测试,根据需求分析的思维导图和功能测试的测试用例覆盖功能模块;

兼容性测试,要根据产品的应用场景来考虑,比如IE、Chorme、ios、android、不同机型等等;

性能测试,根据产品架构、预估数据、线上数据来判断需要执行性能测试的功能接口(比如登录接口);

接口测试,安全性测试等等要根据实际的项目需求来确定。

将需要用到的测试类型按照测试场景、测试方法等以引用文件的形式填写到测试计划中去,以便让所有项目人员清楚的知道要做哪些测试工作以及怎么做。

4、测试资源(含a、测试人员;b、测试环境(测试服务器环境、终端测试环境、网络环境);c、测试工具(bug管理工具、用例管理工具、性能测试工具等);d、bug的等级定义);

5、进度安排

测试工作量估算

测试评估(业务复杂度、测试复杂度、产品质量要求、人员数量及能力)  ;
进度安排(评估不同阶段、不同类型的测试工作的工作量、分配人力、预估时间) ;
输出文档

测试计划;
功能测试用例;
性能测试方案;
bug数据;
性能测试数据;
测试报告等等。
6、发布标准:

测试完成标准

测试计划里所有测试类型都已经完成了;
功能上、兼容性上没有影响用户使用的Bug ;
允许遗留小部分影响不是很大的Bug,但这个数量应该小于一个值 ;
性能上符合设计目标和上线要求 这些标准都是针对测试工作本身的要求。
产品发布标准

产品需求都已完成;
符合交互设计规范,符合视觉要求,设计已通过评审 ;
遗留的一定比例数量的小部分Bug通过项目组完成了风险评估,都认可且问题不大;
产品使用说明或用户手册或更新log都已完备等等。
7、风险说明:

测试范围的风险,比如说测试需求分析是否准确、到位,是否漏了测试点,是否遗漏了某个测试类型,所以测试需求分析是整个测试工作的基础,还有就是产品需求变更的风险,加需求、减需求、改需求都需要重新进行测试需求分析;
测试进度的风险,比如说做计划时工作量估计的不准,导致项目延期,还有可能开发工作没有按时完成或改bug不及时导致进度延后,还有可能测试人员因为别的项目更重要抽调走了或者请假、离职等原因造成人员变动;
产品质量的风险,比如开发的代码质量比较低或者测试人员是新人对业务不熟悉,能力和经验有所欠缺等等;
测试环境的风险。


7.linux基于哪个系统?
8.grep、sed、awk的区别?
grep:普通搜索,主要用于搜索关键字
sed:每次读入一行来处理的,sed 适合简单的文本替换和搜索,sed读取一行,以行作为单位,进行处理。
awk:每次读入一行来处理的(同sed),但awk读取一行,切割成字段,以字段为单位,进行细节处理。
awk和sed是文本处理器。他们不仅具有在文本中查找所需内容的能力,而且还具有删除,添加和修改文本(以及更多功能)的能力。

awk主要用于数据提取和报告。sed是流编辑器


9.测试环境搭建
下载jdk1.8和tomcat
数据库MySQL
安装缓存服务器(memcached)
安装SVN
安装rabbitmq

10.测试环境用到的库
  • 测试框架

    • unittest – (Python 标准库) 单元测试框架。
    • nose – nose 扩展了 unittest 的功能。
    • contexts – 一个 Python 3.3+ 的 BDD 框架。受到C# – Machine.Specifications的启发。
    • hypothesis – Hypothesis 是一个基于先进的 Quickcheck 风格特性的测试库。
    • mamba – Python 的终极测试工具, 拥护BDD。
    • PyAutoGUI – PyAutoGUI 是一个人性化的跨平台 GUI 自动测试模块。
    • pyshould- Should 风格的断言,基于 PyHamcrest
    • pytest- 一个成熟的全功能 Python 测试工具。
    • green- 干净,多彩的测试工具。
    • pyvows- BDD 风格的测试工具,受Vows.js的启发。
    • Robot Framework – 一个通用的自动化测试框架。
  • Web 测试

    • SeleniumSelenium WebDriver 的 Python 绑定。
    • locust – 使用 Python 编写的,可扩展的用户加载测试工具。
    • sixpack – 一个和语言无关的 A/B 测试框架。
    • splinter – 开源的 web 应用测试工具。
  • Mock测试

    • mock – (Python 标准库) 一个用于伪造测试的库。
    • doublex – Python 的一个功能强大的 doubles 测试框架。
    • freezegun – 通过伪造日期模块来生成不同的时间。
    • httmock – 针对 Python 2.6+ 和 3.2+ 生成 伪造请求的库。
    • httpretty – Python 的 HTTP 请求 mock 工具。
    • responses – 伪造 Python 中的 requests 库的一个通用库。
    • VCR.py – 在你的测试中记录和重放 HTTP 交互。
  • 对象工厂

    • factoryboy – 一个 Python 用的测试固件 (test fixtures) 替代库。
    • mixer – 另外一个测试固件 (test fixtures) 替代库,支持 Django, Flask, SQLAlchemy, Peewee 等。
    • modelmommy – 为 Django 测试创建随机固件
  • 代码覆盖率

  • 伪数据

    • faker – 一个 Python 库,用来生成伪数据。
    • fake2db – 伪数据库生成器。
    • radar – 生成随机的日期/时间。
  • 错误处理

    • ***It.py – ***It.py 使用最先进的技术来保证你的 Python 代码无论对错都能继续运行

11.报文的组成

12.反问

更多模拟面试

全部评论

(7) 回帖
加载中...
话题 回帖

相关热帖

热门推荐