编辑
2023-04-27
面试题
00
请注意,本文编写于 730 天前,最后修改于 730 天前,其中某些信息可能已经过时。

目录

1. 软件测试是什么?为什么需要测试?
2. 简要介绍黑盒测试和白盒测试的区别
3. 在黑盒测试中,什么是等价类测试?请举例说明。
4. 什么是缺陷?你是怎么描述缺陷的?
5. 简要介绍一下测试计划和测试用例的关系?
6. 简要介绍一下回归测试?
7. 浏览器地址栏输入一个URL,这个访问过程是怎么样?
8. 简要介绍一下TCP和UDP协议的区别。
9. 如下数据库表,表名为students,id为主键:
10. 假设有两张表,一张为员工表(emp),包括 empid(员工ID)、deptid(部门ID)、ename(员工姓名)、gender(性别)、salary(薪资)五个字段,另一张为部门表(dept),包括 deptid(部门ID)、deptname(部门名称)两个字段。

1. 软件测试是什么?为什么需要测试?

2. 简要介绍黑盒测试和白盒测试的区别

3. 在黑盒测试中,什么是等价类测试?请举例说明。

4. 什么是缺陷?你是怎么描述缺陷的?

5. 简要介绍一下测试计划和测试用例的关系?

6. 简要介绍一下回归测试?

7. 浏览器地址栏输入一个URL,这个访问过程是怎么样?

8. 简要介绍一下TCP和UDP协议的区别。

9. 如下数据库表,表名为students,id为主键:

1)查询年龄大于等于22岁的学生信息
2)将学生名为David的年龄修改为25岁
3)新增,姓名Eric,年龄24岁,性别Male
4)删除学生名为Alice的记录

10. 假设有两张表,一张为员工表(emp),包括 empid(员工ID)、dept_id(部门ID)、e_name(员工姓名)、gender(性别)、salary(薪资)五个字段,另一张为部门表(dept),包括 dept_id(部门ID)、dept_name(部门名称)两个字段。

  • 员工表:
  • 部门表:

1)查询所有员工的empid, e_name, dept_name,结果按照dept_name排序。
2)查询所有员工的平均工资,并按照性别分组。
3)查询部门员工工资排名前三的员工信息

参考

  1. 软件测试是验证软件产品或系统是否符合规定的标准和用户需求的过程。需要测试的原因是为了发现软件缺陷,提高软件质量。
  2. 黑盒测试是从用户的角度出发,测试软件是否符合需求和规格,不考虑内部实现细节;白盒测试是从程序内部逻辑出发,测试程序的内部实现是否正确。
  3. 等价类测试是将数据分为几个等价类,从每个等价类中选取一个或多个值作为测试数据。例如,如果一个输入字段要求输入数字,在等价类测试中,可以将数据分为合法数字和非法数字两个等价类,然后从这两个等价类中分别选取测试数据。
  4. 缺陷是软件中的错误、缺陷、故障或问题。提交的缺陷内容应包括标题、复现频率、复现步骤、缺陷截图、问题严重等级、缺陷截图等。
  5. 测试计划是为了规划测试过程,包括测试目标、测试方法、测试资源、测试时间、测试人员等方面的安排和计划。测试用例是为了验证软件功能是否正确而设计的一组输入、操作和预期结果的集合。测试用例是测试计划的具体实施。在测试执行过程中,测试用例将被用来验证软件系统是否满足测试计划中规定的测试目标和方法。
  6. 回归测试指对软件进行修改或更新后,再次运行之前已经通过测试的测试用例以确认是否仍能正确工作的测试过程。主要目的是确保修改或升级后的软件在已有功能上没有退步和错误,并且新的修改或升级没有引入新的缺陷。
  7. 请求响应基本流程如下:
  • 浏览器封装http(s)请求报文(请求行,请求头,请求体)
  • DNS域名解析获取IP地址
  • 建立TCP连接(三次握手)
  • 发送http(s)请求报文
  • 服务器响应请求,返回相应资源
  • 浏览器渲染,呈现给用户
  1. TCP和UDP的区别有(至少知晓三条):
  • 连接方式:TCP是面向连接的协议,发送数据前要建立连接,而UDP是无连接的协议。
  • 可靠性:TCP提供可靠的数据传输,会进行数据的校验、确认和重传等机制,而UDP传输数据时不会确认是否传输成功,也不会进行重传。
  • 传输速度:TCP传输机制相对复杂,因此传输速度相对较慢;而UDP没有这些机制,传输速度相对较快。
  • 拥塞控制:即使网络已经拥塞,UDP也会不断发送数据包,TCP则具有拥塞控制机制,它可以根据网络状况动态调整发送数据包的速率,以避免网络拥塞。
  1. 数据库表单表查询
  • SELECT * FROM students WHERE age >= 22;
  • UPDATE students SET age = 25 WHERE name = 'David';
  • INSERT INTO students (name, age, gender) VALUES ('Eric', 24, 'Male')
  • DELETE FROM students WHERE name = 'Alice';
  1. 数据库多表查询
  • 查询所有员工的empid, e_name, dept_name,结果按照dept_name排序
SELECT e.empid, e.e_name, d.dept_name FROM emp e LEFT JOIN dept d ON e.dept_id = d.dept_id ORDER BY d.dept_name;
  • 查询所有员工的平均工资,并按照性别分组。
SELECT gender, AVG(salary) FROM emp GROUP BY gender;
  • 有多种方式,内连接子查询可参考:
SELECT empid, e_name, gender, salary, dept_name FROM emp e1 INNER JOIN dept d ON e1.dept_id = d.dept_id WHERE ( SELECT COUNT(DISTINCT salary) FROM emp e2 WHERE e2.salary > e1.salary AND e2.dept_id = e1.dept_id ) < 3 ORDER BY dept_name, salary DESC;
如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:月下追韩信

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!