何止震惊,这些面试题自从进了我的收藏夹,我每天熬夜到凌晨三点,都和男朋友分手了,原因就是这个面试题比男朋友还精彩。
我从我收集的这些面试题当中,筛选出十个代表性最高的的,尤其是第四个和第七个,很多人看完之后完全无法自拔,连连惊呼:这不就是我当年的面试题么?你一定要克制好!!!
0.测试结束的标准是什么?
1) 第一类标准:测试超过了预定时间,则停止测试。
2) 第二类标准:执行了所有的测试用例,但并没有发现故障,则停止测试。
3) 第三类标准:使用特定的测试用例设计方案作为判断测试停止的基础。
4) 第四类标准:正面指出停止测试的具体要求,即停止测试的标准可定义为查出某一预订
数目的故障。
5) 第五类标准:根据单位时间内查出故障的数量决定是否停止测试。
1. 怎样做好测试计划?
1.理解系统。从整个系统的高度了解被测系统必须满足的功能和非功能性需求。利用涉及整个系统的文档,形成对系统的整体了解。
2.及早介入。为了深入了解项目,测试人员应该在系统的开始阶段介入,可以增加对客户需求,客户问题,潜在风险,以及最重要的功能方面的理解
3.测试期望。程序员的期望是什么?客户的期望是什么?销售对测试的期望又是什么?测试目标必须是绝对的,以免说不清楚是否达到目标。
4.吸取教训。把以前工作中学习到的经验教训运用过来,对确定测试策略很有作用。
5.工作量大小。完成测试需要多少工作量?需要多少人员?
6.技术选择。系统会采取什么技术?系统会采用什么架构?这些信息有助于确定测试策略和测试工具。
7.时间表。系统开发和测试分配的时间有多长?截止日期是什么时候?
2.什么是缺陷报告,缺陷报告的作用,缺陷报告的要点
(1) 缺陷报告是描述软件缺陷现象和重现步骤的集合。软件缺陷报告 Software Bug Report(SBR)或软件问题报告 software Problem Report(SPR)。
(2) 缺陷报告是软件测试人员的工作成果之一,体现软件测试的价值缺陷报告可以把软件存在的缺陷准确的描述出来,便于开发人员修正缺陷报告可以反映项目/产品当前的质量状态,便于项目整体进度和质量控制软件测试缺陷报告是软件测试的输出成果之一,可以衡量测试人员的工作能力。
(3) 标题(Title)简洁、准确、完整、反映缺陷本质、方便查询前缀+标题正文,标题正文采用结果和动作, 或者现象和位置的方式表达;步骤(Steps)可复现、完整、简洁、准确按数字编号;实际结果(Actual results) 准确、详细描述软件的现象和特征;期望结果(Expected results)准确、丰富、有理有据;平台(Platforms) 准确;截图(Sereenshots)准确反映缺陷特征;注释(Notes)关于缺陷的辅助说明
3. 在 linux 中 find 和grep 的区别?
Linux 系统中 grep 命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep 全称是 Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
linux 下 的 find:
功能:在目录结构中搜索文件,并执行指定的操作。此命令提供了相当多的查找条件,功能很强大。 语法:find 起始目录寻找条件操作说明:find 命令从指定的起始目录开始,递归地搜索其各个子目录,
查找满足寻找条件的文件并对之采取相关的操作。
简单点说说,grep 是查找匹配条件的行,find 是搜索匹配条件的文件。
4. 写出表的增删改查SQL语法
表的创建:create table 表名 (列名1 类型 约束,列2 类型 约束…)
表的删除:drop table 表名
表的更改(结构的更改,不是记录的更新):alter table 表名 add|drop 列名|约束名
插入记录:insert into 表名…values…
更新记录:update 表名 set 列名=值 where 条件
删除记录:delete from 表名 where 条件
6. Selenium 有哪些定位元素方法
1. id 定位
2. name 定位
3. class_name
4. tag_name
5. link_text
6. partial_link_text
7. Xpath
8. css
当定位一个元素时,如果存在 ID 属性值时,我们可以优先考虑 ID 定位,当没有 ID,有 name 属性值和class 属性值时也可以采用 name 和 class_name 定位。当次能确定该元素的标签为页面唯一时,可以采用 tag_name 定位,一般来说采用 link_text 定位的方法比较少。如果 ID ,name,class_name 单个定位不了,可以采用 css 和 xpath 定位。
5. 依赖第三方的接口如何处理
这个需要自己去搭建一个mock服务,模拟接口返回数据。如可以采用moco,moco是一个开源的框架,moco服务搭建需要自己能够熟练掌握,面试会问你具体如何搭建 ,如何模拟返回的数据,是用的什么格式,如何请求的
6. HTTPS和HTTP的区别?
1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
8. 弱网测试怎么测?
弱网环境测试主要依赖于弱网环境的模拟。环境搭建方式一般有两种:软件方式和硬件方式。软件方式的成本低,主要就是通过模拟网络参数来配置弱网环境,通常来讲可以达到测试目的.一般可通过热点共享设置。在各类网络软件中,主要就是对带宽、丢包、延时等进行模拟弱网环境。如果要求更接近弱网环境, 比如现在很多的专项测试,会更倾向于通过硬件方式来协助测试,但这种方式相对会麻烦很多,一般会由网维协助搭建。当然,对于有些无法模拟的情况,只能靠人工移动到例如电梯、地铁等信号比较弱的地方。
9. 什么是Python中的list
list:是 Python 中使用最频繁的数据类型,在其他语言中通常叫做数组,通过索引进行查找,使用方括号”[]”, 列表是有序的集合。应用场景:定义列表使用 [ ] 定义,数据之间使用 “,”分割。
列表的索引从 0 开始:索引就是数据在列表中的位置编号,索引又可以被称为下标。
【注意】: 从列表中取值时,如果超出索引范围,程序就会产生异常
10. 什么是负载测试?
负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试,例如,访问一个页面的响应时间规定不超过1秒,负载测试就是测试在响应时间为1秒时,系统所能承受的最大并发访问用户的数量。