软件测试相关面试题

个人Blog:dykang.top

软件测试的工作:找出软件存在的问题,确保软件产品在发布之前达到一定的质量目标的职责。有很强的责任感,对软件质量负责,对客户的质量期望负责

  • 软件测试的基本概念、目的和重要性: 软件测试是一种评估软件质量的过程,旨在发现潜在的缺陷和问题,确保软件满足用户需求和预期功能。其重要性在于提高软件质量、减少后期维护成本、增强用户满意度等。

  • 软件测试的各个阶段和常用的测试类型: 软件测试包括单元测试、集成测试、系统测试和验收测试等阶段。单元测试是针对单个代码模块的测试,集成测试是测试不同模块之间的集成情况,系统测试是测试整个系统的功能和性能,验收测试是由用户进行的测试以确认软件是否满足需求。常用的测试类型包括功能测试、性能测试、安全测试、兼容性测试等。

  • 黑盒测试和白盒测试的区别: 黑盒测试是基于软件规格说明进行测试,不考虑内部实现细节;白盒测试是基于代码内部结构进行测试,考虑内部逻辑和数据流。例如,黑盒测试可以通过输入输出的逻辑判断来进行测试,而白盒测试则需要了解代码的执行路径和逻辑。

  • 测试过程

    1. 需求分析:理解用户需求和设计规格,了解软件的功能和性能需求。

    2. 制定测试计划:确定测试范围、测试目标、测试资源、测试进度和测试策略等。

    3. 编写测试用例:根据需求文档或设计文档编写测试用例,包括输入数据、预期输出、执行步骤等。

    4. 执行测试用例:根据测试计划和测试用例执行测试,记录测试结果和问题。

    5. 缺陷管理:对发现的缺陷进行记录、跟踪和管理,包括缺陷的分类、优先级、状态和解决情况等。

    6. 回归测试:修改后的代码,然后进行测试,看是否改正,然后改正是否会带来其他bug,然后也需要执行之前已经测试过的用例

    7. 测试报告:根据测试结果编写测试报告,包括测试覆盖情况、缺陷统计、风险评估和建议等。

黑盒白盒

  1. 黑盒测试(Black Box Testing)

    • 定义:黑盒测试是一种测试方法,测试人员在不了解内部实现细节的情况下,仅根据软件规格说明和功能需求来验证软件的正确性、完整性和质量。

    • 方法:黑盒测试的方法主要包括等价类划分、边界值分析、决策表测试、因果图等。测试人员通过输入合法和非法的输入数据,以及各种情况下的输入组合,检查软件的输出是否符合预期。

    • 优点:测试人员无需了解内部代码逻辑,可以独立进行测试,覆盖面广。

    • 缺点:测试覆盖可能不够全面,无法发现潜在的内部错误。

  2. 白盒测试(White Box Testing)

    • 定义:白盒测试是一种测试方法,测试人员在了解软件内部实现细节的情况下,针对代码的结构、逻辑和路径进行测试,以验证软件的正确性、性能和安全性。

    • 方法:白盒测试的方法主要包括语句覆盖、分支覆盖、路径覆盖、条件覆盖、数据流覆盖等。测试人员通过检查代码的执行路径和内部状态,以及对特定条件和情况的处理,来评估软件的质量和健壮性。

    • 优点:能够发现隐藏在代码内部的错误和逻辑缺陷,提高代码的质量和健壮性。

    • 缺点:需要深入了解代码的内部实现细节,测试过程可能更复杂,覆盖面相对较窄。

常用的 Linux 命令有哪些?

cd, pwd, ls, cat, tail, vi, mkdir, touch,

du(目录所占的资源), df(磁盘空间使用情况), top(cpu使用率), free(查看剩余的内存), chmod, ps-ef, lsof (当前文件的线程)等。

查看某端口号:netstat -anp | grep 端口号

netstat -tlnp

查看当前机器listen的所有端口

Get和Post请求

Get 请求和 Post 请求有什么区别? 首先,GET 经常用于获取数据,POST 经常用于提交数据;

其次,GET 方法提交数据时将数据拼接到 URL 中,客户端地址栏可见;而 POST 方法提交数据时将数据置于消息主体内;

不同浏览器对 URL 的长度有限制,所以 GET 请求传送的数据量是有限的,而理论上POST 请求传送的数据量是不受限制的。

常见的测试设计方法有哪些?

常见的测试设计方法:场景分析法、等价类、边界值法和错误猜测法。

①场景分析法:理解需求,把程序中的基本流和备选流描述出来,根据基本流和备选流生

成不同的场景,对每一个场景生成相应的测试用例。

②等价类:针对单个输入数据的测试,把输入数据划分为有效等价类(合理的、有意义的

输入)和无效等价类(不合理的、无意义的输入),在等价类中任意选取数据来测试。

③边界值:列出合法边界值和非法边界值,分别进行测试;测试数据为边界上的值。

④错误推测法:根据经验+直觉推测可能存在什么错误,针对性设计测试用例。

常见的推测依据:以前产品测试中发现的问题、修复了 bug 的功能和模块等,测试用例的评审就是一种错误推测法的应用。

正交法:根据因素和因素的状态,选取合适的正交表,能够减少测试用例的数目,选择出比较准确的测试用例。

Header

Headers):包含请求的元数据信息,如 Content-Type、Content-Length 等。

内容的类型,长度,token身份验证,目标主机和端口号,cookie

Cookie 和 Session 区别

Cookie

  • 存储在客户端,以文本形式保存在用户的浏览器中。

  • 用于跟踪用户会话,可以存储少量的数据。

  • 客户端可以修改或删除 Cookie。

  • 可以设置过期时间,可以长期保存,浏览器关闭后依然有效。

Session

  • 存储在服务器端,以一种更安全的方式保存用户数据。

  • 通常存储在服务器的内存或数据库中。

  • 通过 Cookie 中的 Session ID 进行标识和跟踪。

  • 服务器控制 Session 的创建、维护和销毁。

  • 可以存储大量数据,但会增加服务器负担。

测试用例示例模板

  • 测试标题:登录功能测试

  • 测试目的:验证用户能够成功登录系统。

  • 前提条件:用户已注册,并且输入了正确的用户名和密码。

  • 测试步骤:

    1. 打开登录页面。

    2. 输入有效的用户名和密码。

    3. 点击登录按钮。

  • 预期结果:用户成功登录系统,并跳转到首页。

Bug

  1. 提交一个 bug 需要提供的信息包括:

    • Bug 的描述:清晰描述 bug 的现象、出现的条件和影响。

    • 复现步骤:描述复现 bug 的具体步骤。

    • 期望结果和实际结果:说明预期的行为和实际发生的行为之间的差异。

    • 环境信息:包括操作系统、浏览器版本、设备型号等。

    • 截图或录像:提供相关的截图或录像,帮助开发人员更好地理解问题。

    • 日志信息:提供相关的日志信息,如错误日志或调试信息。

    • 其他相关信息:如影响程度、优先级等。

续~ 

  • 24
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值