第一章 内容介绍
第二章 测试理论
一、 软件工程
1. 阐述软件生命周期都有哪些阶段?常见的软件生命周期模型有哪些?
2. 什么是版本控制,常用的版本控制系统有哪些?
3. 简述软件测试与软件开发之间的关系?
4. 线上版本如如何测试和更新?
二、 测试模型
5. 常见测试模型有哪些?
6. 请根据”V”模型分别概述测试人员在软件的需求定义阶段、设计阶段、编码阶段、系统集成阶段的工作任务及其相应生成的文档?
7. W模型的描述?
三、 测试计划
8. 编写测试计划的目的是?
9. 测试计划编写的六要素?
10. 项目版本执行过程中,测试人员如何把控测试进度?
11. 怎样做好测试计划、任务跟踪、和漏测分析?
12. 测试人员在软件开发过程中的任务是什么?
四、 测试类型
13. 请列出你所知道的软件测试种类,至少 5 项?
14. 黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系?
15. 黑盒测试和白盒测试常用的测试方法有哪些,举个例子?
16. 简述黑盒测试和白盒测试的优缺点?
17. 在没有产品说明书和需求文档的情况下能够进行黑盒测试的设计吗?
18. 单元测试的策略有哪些,主要内容有哪些?
19. 白盒测试逻辑覆盖有哪几种覆盖标准,覆盖率最高的是什么?
20. Beta测试和Alpha测试有什么区别?
五、 测试流程
21. 软件测试的基本流程有哪些?
22. 测试结束的标准是什么?
23. 软件测试的原则是什么?
六、 用例设计
24. 什么是测试用例,测试用例的基本要素?
25. 描述测试用例设计的完整过程?
26. 一个有广告的纸杯子,请设计测试用例?
27. 一个身份证号码输入框,怎么设计用例?
28. 登录功能怎么设计测试用例?
29. 好的测试用例有哪些特点?
七、 缺陷bug
30. 软件缺陷的生命周期?
31. 缺陷描述(报告单)中应该包括哪些内容?
32. 如何提高缺陷的记录质量?
33. 如果一个缺陷被提交后,开发人员认为不是问题,怎么处理?
第三章 Linux基础
1. 如何查看CPU信息?
2. 查看占用CPU使用率最高的进程?
3. 如何查看一个文件的末尾50行?
4. 如何过滤文件内容中包含”ERROR“的行?
5. 查看某端口号?
6. 查看某进程号?
7. 查看IP地址?
8. 创建和删除一个多级目录?
9. 在当前用户家目录中查找haha.txt文件?
10. 如何查询出tomcat的进程并杀掉这个进程,写出linux命令?
11. 动态查看日志文件?
12. 查看系统硬盘空间的命令?
13. 查看当前机器listen的所有端口?
14. 把一个文件夹打包压缩成.tar.gz的命令,以及解压拆包.tar.gz的命令?
15. Xshell工具如果想要实现从服务器上传或者下载文件的话,可以在服务器上安装什么包?
16. 以/etc/passwd的前五行内容为例,提取用户名?
17. 在linux 中find 和grep 的区别?
第四章 Mysql基础
一、 基础知识
1. 什么是数据库?
2. 什么是关系型数据库,主键,外键,索引分别是什么?
3. 表的连接查询方式有哪些,有什么区别?
4. SQL 的 select 语句完整的执行顺序?
5. 说一下Mysql 数据库存储的原理?
6. 事务的特性?
7. 数据库索引?
8. 数据库怎么优化查询效率?
9. 你用的Mysql 是哪个引擎,各引擎之间有什么区别?
10. 如何对查询命令进行优化?
11. 数据库的优化?
12. Sql 注入是如何产生的,如何防止?
13. NoSQL 和关系数据库的区别?
14. MySQL 与MongoDB 本质之间最基本的差别是什么
15. Mysql 数据库中怎么实现分页?
16. sql 语句怎么看效率?
17. 提取数据库中倒数10 条数据?
18. Mysql 数据库的操作?
19. 优化数据库?提高数据库的性能?
20. 存储过程和函数的区别?
21. Mysql开启General-log日志?
二、 查询联系
22. Student-Sourse-SC-Teacher表关系如下:
23. 员工信息A-员工亲属信息表B表关系如下:
24. 部门表dept-雇员表emp表关系如下:
25. Student-coures-Studentcourse表关系如下:
第五章 Web测试
1. 描述用浏览器访问www.baidu.com 的过程?
2. 了解的常用浏览器有哪些?
3. 什么是sql注入,什么是跨站脚本,什么是跨站请求伪造?
4. 给你一个网站怎么开展测试?
5. 电商支付模块的测试如何展开?
6. 如何开展兼容性测试?
7. nginx,tomcat,apache都是什么?
8. apache 和nginx 的区别?
第六章 API测试
1. 接口类型有哪些?
2. 手机短信验证码接口怎么测试?
3. 如果模块请求http改为了https,测试方案应该如何制定,修改?
4. 常用HTTP协议调试代理工具有什么?详细说明抓取HTTPS协议的设置过程?
第七章 App测试
1. 简述Android四大组件及生命周期?
2. 当点击APP图标启动程序,说明将要发生那些过程?
3. APP测试的内容主要包括哪些,如何开展?
4. Android的兼容性测试都考虑哪些内容?
5. 了解的安卓自动化测试工具有哪些,使用测工具开展测试的步骤和方法?
6. 针对App的安装功能,写出测试点?
7. 常用的ADB命令?
8. 在查看logcat命令日志时候怎么内容保存到本地文件?
9. App崩溃(闪退),可能是什么原因导致的?
10. 如何测试监测app的内存使用、CPU消耗、流量使用情况?
第八章 管理工具
1. 熟悉的软件项目管理工具有哪些?
2. 结合你的测试工作中使用的管理缺陷的工具,讲一下使用此工具描述软件缺陷和跟踪管理流程?
3. 简述常用的 Bug 管理或者用例管理工具,并且描述其中一个工作流程?
4. 禅道和 qc 的区别?
第九章 Python基础
1. 斐波那契数列求N?
2. 字符串反序输出?
3. 判断回文?
4. 统计python源代码文件中代码行数,去除注释,空行,进行输出?
5. python调用cmd并返回结果?
一、 输入与输出
6. 代码中要修改不可变数据会出现什么问题? 抛出什么异常?
7. 代码中要修改不可变数据会出现什么问题? 抛出什么异常?
8. print 调用 Python 中底层的什么方法?
9. 简述你对 input()函数的理解?
二、 条件与循环
10. 阅读下面的代码,写出 A0,A1 至 An 的最终值?
11. range 和 xrange 的区别?
12. 考虑以下 Python 代码,如果运行结束,命令行中的运行结果是什么?
三、 字典
13. 现有字典 d={‘a’:24,‘g’:52,‘i’:12,‘k’:33}请按字典中的 value 值进行排序?
14. 说一下字典和 json 的区别?
15. 什么是可变、不可变类型?
16. 存入字典里的数据有没有先后排序?
17. 字典推导式?
18. 现有字典 d={‘a’:24,’g’:52,’l’:12,’k’:33}请按字 典中的 value 值进行排序?
四、 字符串
19. 如何理解 Python 中字符串中的\字符?
20. 请反转字符串“aStr”?
21. 请按 alist 中元素的 age 由大到小排序
五、 列表
22. 列表增加
23. 取值和修改取值:列表名[index] :根据下标来取值。
24. 删除 del 列表名[index]:删除指定索引的数据。
25. 列表名.remove(数据):删除第一个出现的指定数据。
26. 列表名.pop():删除末尾的数据,返回值: 返回被删除的元素。
27. 列表名.pop(index):删除指定索引的数据,返回被删除的元素。
28. 列表名.clear():清空整个列表的元素。
29. 排序列表名.sort():升序排序 从小到大。
30. 列表名.sort(reverse=True):降序排序 从大到小。
31. 列表名.reverse():列表逆序、反转。
32. len(列表名):得到列表的长度。
33. 列表名.count(数据):数据在列表中出现的次数。
34. 列表名.index(数据):数据在列表中首次出现时的索引,没有查到会报错。
35. if 数据 in 列表: 判断列表中是否包含某元素。
36. 循环遍历
37. 写一个列表生成式,产生一个公差为 11 的等差数列
38. 给定两个列表,怎么找出他们相同的元素和不同的元素?
39. 请写出一段 Python 代码实现删除一个 list 里面的重复元素?
40. 给定两个 list A ,B,请用找出 A ,B 中相同的元素,A ,B 中不同的元素
六、 元祖
七、 集合
41. 快速去除列表中的重复元素
42. 交集:共有的部分
43. 并集:总共的部分
44. 差集:另一个集合中没有的部分
45. 对称差集(在 a 或 b 中,但不会同时出现在二者中)
八、 文件操作
46. 4G 内存怎么读取一个 5G 的数据?(2018-3-30-lxy)
47. 现在要处理一个大小为 10G 的文件,但是内存只有 4G,如果在只修改 get_lines 函数而其他代码保持不变的情况下,应该如何实现?需要考虑的问题都有哪些?
48. read、readline 和 readlines 的区别?
九、 函数
49. Python 函数调用的时候参数的传递方式是值传递还是引用传递?
50. 对缺省参数的理解 ?
51. 为什么函数名字可以当做参数用?
52. Python 中 pass 语句的作用是什么?
十、 内建函数
53. map 函数和 reduce 函数?
54. 递归函数停止的条件?
55. 回调函数,如何通信的?
56. Python 主要的内置数据类型都有哪些? print dir( ‘a ’) 的输出?
57. print(list(map(lambda x: x * x, [y for y in range(3)])))的输出?
十一、 Lambda
58. 什么是 lambda 函数? 有什么好处?
59. 什么是 lambda 函数?它有什么好处?写一个匿名函数求两个数的和?
十二、 面向对象
60. Python 中的可变对象和不可变对象?
61. Python 中 is 和==的区别?
62. Python 的魔法方法?
63. 面向对象中怎么实现只读属性?
64. 谈谈你对面向对象的理解?
十三、 正则表达式
65. Python 里 match 与 search 的区别?
66. Python 字符串查找和替换?
67. 用 Python 匹配 HTML g tag 的时候,<.*> 和 <.*?> 有什么区别?
68. 请写出下列正则关键字的含义?
十四、 异常
69. 在except中return后还会不会执行finally中的代码?怎么抛出自定义异常?
70. 介绍一下 except 的作用和用法?
十五、 模块与包
71. 常用的 Python 标准库都有哪些?
72. 赋值、浅拷贝和深拷贝的区别?
73. __init__ 和__new__的区别?
74. Python 里面如何生成随机数?
75. 输入某年某月某日,判断这一天是这一年的第几天?(可以用 Python 标准库)
76. 打乱一个排好序的 list 对象 alist?
77. 说明一下 os.path 和 sys.path 分别代表什么?
78. Python 中的 os 模块常见方法?
79. Python 的 sys 模块常用方法?
80. 模块和包是什么
十六、 Python 特性
81. Python 是强语言类型还是弱语言类型?
82. 谈一下什么是解释性语言,什么是编译性语言?
83. Python 中有日志吗?怎么使用?
84. Python 是如何进行类型转换的?
85. 工具安装问题
86. 关于 Python 程序的运行方面,有什么手段能提升性能?
87. Python 中的作用域?
88. 什么是 Python?
89. 什么是 Python 的命名空间?
90. 你所遵循的代码规范是什么?请举例说明其要求?
十七、 Python2 与 Python3 的区别
91. 核心类差异
92. 废弃类差异
93. 修改类差异
94. 第三方工具包差异
第十章 Selenium相关
1. 官方文档地址
2. 常用自动化测试工具机器运行原理,写出一段元素查找的代码?
3. 如何开展自动化测试框架的构建?
4. 如何设计自动化测试用例:
5. webdriver如何开启和退出一个浏览器?
第十一章 Jmeter相关
1. Jmeter的七大原件是什么?有什么作用?
2. 聚合报告的每个字段代表的是什么意思?
第十二章 Appium相关
关注黑马程序员软件测试,持续更新中……
第十三章 性能测试
1. 常见性能测试的方法有哪些?举例解释一下?
2. 你认为性能测试的目的是什么?做好性能测试的工作的关键是什么?
3. 服务端性能分析都从哪些角度来进行?
4. 如何理解压力测试,负载测试以及性能测试?
5. 编写一个http接口性能测试方案,测试过程的关注点有哪些,流程等?
6. 如何判断是否有内存泄漏及关注的指标?
第十四章 LordRunner相关
1. LoadRunner的工作原理是什么?
2. LoadRunner脚本如何录制和编写?
3. LoadRunner中的Think Time有什么作用?
4. 在搜索引擎中输入汉字就可以解析到对应的域名,请问如何用LoadRunner进行测试?
5. 一台客户端有三百个客户与三百个客户端有三百个客户对服务器施压,有什么区别?
第十五章 计算机基础
一、 操作系统
1. 什么是内存泄漏?什么是内存溢出?二者有什么区别?
2. 了解的操作系统有哪些?
二、 计算机网络
1. 什么是局域网,广域网?
2. 10M兆宽带是什么意思?理论下载速度是多少?
3. 什么是IP地址?
4. OSI七层网络模型的划分?
5. TCP和UDP有什么不同?
6. HTTP属于哪一层的协议?
7. HTTP和HTTPS的区别?
8. cookies和session的区别?
9. HTTP的get请求和post请求的区别?
10. TCP的连接建立过程,以及断开过程?
11. 常用协议端口号SSH、DHCP、HTTP、FTP、SMTP、DNS等?
12. 客户端使用DHCP获取IP的过程?
13. 写出某个网段的网络地址和广播地址?
14. 什么是VPN都有什么类型?
三、 组成原理
四、 数据结构与算法
1. 冒泡排序
第十六章 实战
五、 面试题目
1. 你觉得测试在一个公司中扮演什么角色?
2. Linux命令查看进程的命令,杀死进程的命令是什么?
3. 压力测试,负载测试,性能测试的关系?
4. 工作当中运用了哪些linux命令,什么场景下用的?
5. 你们公司的测试流程是什么?
6. 测试中有没做过风险评估?
7. 自动化登录成功如何校验?
8. Mysql存储过程是什么?
9. 给你几个英文单词(举例Hello world),设计简单脚本使其反着输出单词(这里输出world hello)
10. 阶乘(N!题)如下:10000!得出末尾有多少个零
11. 测试计划都包括什么?测试计划中的任务和时间都是我评估和分配吗?
12. 觉得Web端和手机端测试有什么不同?
13. selenium和Appium是怎么联系的?有什么关系?
14. 测试计划是哪个开发阶段写的?在编码之前就要把测试计划写好吗?
15. 对于移动端混合型的元素你们是怎么抓取的?
16. 谁来进行自动化测试用例的维护?
17. 介绍一下w模型和H模型的区别?
18. HTML常用的标签有哪些,他们代表的是什么意思?
19. HTTP请求代码有哪些,他们代表的是什么意思?
20. 如果你测试的发现需求与开发的需求不一致,你是如何处理?
21. 给你一个淘宝购物车模块你会怎么测试?
22. V模型和W模型有哪些优缺点?
23. 从开发到上线会测是几轮?
24. 搜索功能的测试用例你觉得会包括哪些?
六、 笔试题目
1. 请分别针对性能测试,负载测试和压力测试举出一简单的而例子?
2. 什么时候开始执行性能测试?
3. 性能测试时是不是必须进行参数化?为什么要创建参数?LR中如何创建参数?
4. LR中如何实现多用户并发操作,要进行那些设置?
5. LR中有哪几种并发执行策略?它们的含义是什么?
6. 软件验收测试的合格通过标准是什么?
7. 区别阶段评审与同行评审?
8. 软件验收测试包括?
9. 系统测试的策略有?
10. 设计系统测试需要参考的项目文档有?
11. 对面向过程的系统采用的集成策略有?
12. 怎么做好文档测试?
13. 系统测试时候需要同行评审?为什么?
14. 比较负载测试,容量测试和轻度测试的区别?
15. 软件缺陷等级应该如何划分?
16. 商城中购买功能的流程图?
17. 如果开发修改了底层代码,如何查询影响范围?
18. 测试过程中输出的文件件有哪些?
19. 软件测试主要分为哪四类测试?
20. 测试分析主要分析的内容有哪些?
21. 操作说明书的帮助文档制作工具有?
22. 设计测试用例的过程中应该考虑到哪两种输入?
23. 试描述对一个大型软件项目的测试全过程,并描述如何把好产品质量关(该项目是一站式,其中包含十个子系统。且相关文档健全?
24. 你认为做好测试计划工作的关键是什么?
25. 网络层协议有哪些?传输层协议有哪些?应用层协议有哪些?
26. Android和ios系统的有哪些区别?
27. Web页面主要测试那些内容?
28. Web测试有哪些性能专项?
29. 测试app消息推送通知时候要考虑哪些内容?
30. 软件质量评估常用那些指标?
31. 试着画出缺陷生命周期的缺陷转换图,并标转换条件?
32. 软件评审一般有哪些人参加,其目的是什么?
33. 简单描述TCP/IP协议与Http协议的区别?
34. 有一款app它可以监控和控制跑步机,请罗列出测试点和运用到的那些测试方法?
35. 你们是如何编写测试用例的?如何保证用用例的覆盖度?如何维护用例?
36. 手机qq登录功能的测试点?
37. 软件测试是指什么?
38. 质量评估有哪些指标?