2024软件测试基础类面试题

目录

按测试内容划分,测试有哪些种类?

软件测试的流程是怎么样的?

黑盒测试的方法有哪些?

测试用例通常包含哪些要素?

测试报告通常包括哪些要素?

测试排期应该怎么估算?

聊聊 fiddler 的抓包原理

fiddler怎么抓取https请求?

性能测试如何做


按测试内容划分,测试有哪些种类?

功能测试(Functional Testing):验证系统是否按照需求规格说明书的要求,按照预期功能正常工作。这种测试通常是黑盒测试,测试人员不需要了解系统内部的实现细节。

性能测试(Performance Testing):评估系统的性能指标,如响应时间、吞吐量、并发用户数等。这种测试可以帮助发现系统在负载情况下的性能瓶颈,并进行优化。

安全测试(Security Testing):评估系统的安全性,包括漏洞扫描、渗透测试和安全配置审查等。这种测试可以发现系统的安全弱点,防止潜在的安全威胁。

兼容性测试(Compatibility Testing):验证系统在不同的操作系统、浏览器、设备和网络环境下的兼容性。这种测试可以确保系统在各种环境下都能正常运行。

可用性测试(Usability Testing):评估系统的易用性和用户体验。这种测试关注用户界面设计、导航流程和用户交互等方面,以确保用户能够方便地使用系统。

接口测试(Interface Testing):验证系统与外部系统或组件之间的接口是否正常工作。这种测试可以确保系统与其他系统的集成顺利进行。

回归测试(Regression Testing):重复执行已通过的测试用例,以确保系统在进行修改或新增功能后仍然正常工作。这种测试可以帮助发现因修改引入的新问题。

冒烟测试(Smoke Testing):对系统的主要功能进行快速测试,以验证系统是否基本可用。这种测试通常在每个新版本发布前进行。

压力测试(Stress Testing):在超出系统正常工作负载的情况下进行测试,以评估系统的稳定性和容错能力。这种测试可以帮助发现系统在极端情况下的性能问题。

国际化测试(Internationalization Testing):验证系统是否能够适应不同地区和语言的需求。这种测试关注系统的本地化和国际化支持。

软件测试的流程是怎么样的?

需求分析:测试团队与开发团队审查软件需求规格说明书,确保对软件功能和性能的理解一致。

测试计划:制定测试计划,确定测试的范围、目标、方法和资源需求。

测试设计:根据需求规格说明书,设计测试用例和测试数据,以确保对软件功能的全面覆盖。

环境准备:搭建测试环境,包括测试工具和测试数据的准备。

执行测试:根据测试计划和设计的测试用例,执行各种功能、性能、安全等测试,并记录测试结果。

缺陷管理:对发现的缺陷进行记录、跟踪和管理,与开发团队沟通,以便及时修复。

回归测试:在修复缺陷后,重新执行相关测试用例,以确保修复不会引入新的问题。

验证测试:确认软件是否满足需求规格说明书中的所有要求。

交付测试报告:根据测试结果撰写测试报告,包括测试执行情况、发现的缺陷和建议。

完成测试:测试团队与开发团队一起评估测试流程和测试结果,并总结经验教训,以提高软件质量。

黑盒测试的方法有哪些?

黑盒测试是一种软件测试方法,测试人员不需要了解内部的实现细节,只关注软件的输入和输出。

等价类划分:将输入数据划分为等效类,选择代表每个等效类的测试数据进行测试。例如,对于一个要求输入年龄的表单,可以将年龄小于18岁、18-65岁和大于65岁的输入划分为三个等价类,选择一个代表每个等价类的年龄值进行测试。

边界值分析:测试边界值和边界值附近的数据。因为边界值通常容易引发错误。例如,对于一个要求输入1到100的数值的表单,测试数据可以选择1、2、99、100和101等。

因果图法:使用因果图来描述输入和输出之间的因果关系,可以帮助测试人员理清输入和输出之间的关系,设计相关的测试用例。因果图可以帮助测试人员在有限的时间内设计出更全面的测试用例。

判定表驱动测试:根据事先定义好的判定表,设计测试用例。判定表列出了不同的输入条件和相应的操作或结果。通过设计测试用例来覆盖判定表的不同组合,可以有效地进行测试。

场景法:根据系统的不同使用场景和用户需求,设计相关的测试场景和测试用例。场景法可以帮助测试人员更好地理解用户的实际使用情况,设计出符合用户期望的测试用例。

功能图法:使用功能图来描述软件系统的功能和模块之间的关系,从而帮助测试人员设计相关的测试用例。功能图可以帮助测试人员更好地理解系统的结构和功能,设计出有效的测试用例。

错误推测法:根据测试人员的经验和直觉,推测可能存在的错误,并设计相关的测试用例进行验证。通过错误推测法,可以帮助测试人员发现潜在的问题和错误。

正交试验设计法:使用正交试验设计方法,设计出最少的测试用例,覆盖最多的情况。通过正交试验设计法,可以在有限的资源下,实现较高的测试覆盖率。

测试用例通常包含哪些要素?

测试用例编号:用于唯一标识测试用例的编号。

测试目标:描述测试用例的目标或被测功能。

测试条件:描述执行测试用例的前提条件,例如预置数据、环境要求等。

输入数据:指定输入测试用例的数据或参数。

期望结果:定义测试用例执行后的期望输出或行为。

执行步骤:详细描述执行测试用例的步骤和操作。

预期行为:描述执行每个步骤后的预期行为或结果。

实际结果:记录测试执行后的实际结果。

测试结果:根据实际结果判断测试用例是否通过或失败。

测试报告通常包括哪些要素?

测试概况:包括测试项目的概述、测试范围、测试时间、测试人员等基本信息。

测试执行情况:总结测试用例的执行情况,包括执行的测试用例数量、通过的用例数量、失败的用例数量等。

缺陷统计:总结测试过程中发现的缺陷数量、严重程度、优先级等信息。

测试覆盖率:描述测试用例对被测系统的覆盖程度,包括功能覆盖、代码覆盖等。

测试结果分析:分析测试结果,包括通过的测试用例、失败的测试用例、原因分析等。

缺陷跟踪:跟踪已发现的缺陷,包括缺陷的状态、修复进度等。

测试总结:对整个测试过程进行总结,包括测试的收获、问题和改进建议等。

附件:可以包含一些附加信息,如测试日志、截图、测试数据等。

测试排期应该怎么估算?

确定测试范围:首先要明确需要测试的功能、模块或系统的范围,包括各种不同类型的测试,如功能测试、性能测试、安全测试等。

评估测试工作量:根据测试范围,评估每个测试任务的工作量。

制定测试计划:根据测试工作量和可用资源,制定详细的测试计划 。

考虑风险和不确定性:在估算排期时,要考虑到项目中可能出现的风险和不确定性因素,如需求变更、技术难题等,对这些因素进行评估,并在排期中留出一定的缓冲时间。

进行跟踪和调整:一旦测试开始进行,要跟踪测试的进展情况,并及时调整排期,以确保测试工作按计划进行。

聊聊 fiddler 的抓包原理

首先需要进行代理设置,fiddler相当于是服务器和客户端之间的中间件,将浏览器或其他应用程序的代理设置指向Fiddler代理服务器,这样所有的网络流量会经过fiddler进行拦截和分析。

其次进行网络流量拦截,代理设置完成后,设置有过不同协议的网络流量,包括http、https和websocket等协议的请求和响应。

接着针对Https流量,通过自签名证书进行解密。

设置完成后,即可开始数据抓取和分析,将请求和响应数据保存到本地,并提供一个用户界面用于查看和分析。

此外,fiddler还有修改和重发请求的功能,可以直接在fiddler界面修改请求的内容、头部信息等,并将修改后的请求发送到服务器进行测试和分析。

fiddler怎么抓取https请求?

主要是考察整个实操步骤。这个可以走一遍。

Fiddler菜单栏中有tools菜单,在下拉菜单找到options,对话框中确保勾选 allow remote computers to connect,记下fiddler监听的ip地址和端口号。选择https选项卡,其中勾选Decrypt HTTPS traffic 复选框。手机上打开wifi设置,将代理设置为电脑的地址和端口。在设备上连接到fiddler服务器,根据提示安装fiddler根证书。

性能测试如何做

性能测试是为了评估系统、应用或网站在不同负载条件下的性能表现。

定义性能测试目标:明确测试的目标,例如确定所要测试的系统或应用的性能指标,如响应时间、吞吐量、并发用户数等。

确定测试环境:建立一个与实际使用环境相似的测试环境,包括硬件、软件、网络等方面。这有助于模拟真实的负载条件。

制定性能测试计划:根据测试目标和需求,制定性能测试的计划,包括测试场景、测试用例、测试数据等。测试场景可以涵盖不同的用户行为、并发访问、数据负载等。

配置性能测试工具:选择适合的性能测试工具,如JMeter、LoadRunner等,并进行配置。配置包括设置并发用户数、请求频率、数据负载等。

执行性能测试:按照测试计划执行性能测试,模拟真实用户使用场景,记录相关的性能指标,如响应时间、吞吐量、错误率等。

分析性能测试结果:对性能测试结果进行分析,评估系统的性能表现,查找性能瓶颈和问题。可以使用图表、报表等方式展示测试结果,以便更好地理解和比较。

优化和调整:根据性能测试结果,针对性地进行优化和调整。可以优化代码、调整配置、增加服务器资源等措施,以提高系统的性能表现。

重复测试:在优化和调整后,再次执行性能测试,检查是否达到了预期的性能目标。如果未达到目标,可以再次进行调整和优化,直到满足要求。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值