[软件测试] 期末答辩问题

news/2024/11/17 3:40:07/

1. 给你一个网站,你该如何测试?

  • (1)确定测试目标和范围,查找相关文档如需求说明书、网站设计文档等,分析测试需求
  • (2)制定测试计划,确定测试范围和测试策略,一般包含以下几个部分:功能测试、兼容性测试、性能测试、安全测试、数据库测试
  • (3)设计测试用例
    • 进行功能测试
      • 注册与登录功能:测试用户注册和登录流程
      • 导航和链接功能:测试网站导航菜单、内部和外部链接的跳转是否正确
      • 页面展示和布局:测试页面的布局、样式、图标是否一致符合设计规范,控件是否正常使用
    • 进行兼容性测试
      • 测试不同浏览器(谷歌、火狐、百度)和操作系统(Windows、Mac、Linux)下的兼容性
      • 测试网站在不同设备(手机、平板、电脑)上的兼容性
    • 进行性能测试
      • 测试网站的加载速度、响应时间和并发用户数等指标,可以使用性能测试工具JMeter模拟高负载情况下的用户访问
      • 测试各种操作和功能在不同网络条件下的性能表现,如低带宽、高延迟等情况。
    • 进行安全测试
      • 测试网站的身份验证和授权机制,确保授权用户才能够访问敏感数据和功能
      • 测试网站受否受到常见的Web安全漏洞(如跨站脚本攻击、SQL注入等)的保护
    • 进行数据库测试
      • 测试网站与数据库的连接和交互是否正常,包括增删改查等操作
      • 验证数据的输入输出、准确性和一致性
  • (4)准备测试数据,根据测试需求准备合适的测试数据,包括有效数据、无效数据和边界值数据等
  • (5)搭建测试环境,开展测试,并记录缺陷

2.单元测试里测试的是哪5个函数,然后以某个为例说出用的什么测试方法,发现了什么缺陷 

使用Junit测试JeeSite项目中StringUtils类以及DateUtils类中的任意五个方法。选择测试的五个方法如下所示:

  • (1)inStringIgnoreCase():判断某字符串组是否包含某特定字符串,同时判断不对大小写进行区分。
  • (2)trim2():去除左右空格
  • (3)stripHtml():替换为手机识别的HTML,去掉样式及属性
  • (4)camelCase():驼峰命名法
  • (5)getMonthHasDays() 获取某月有几天

使用的是等价类划分法,getMonthHasDays(Date date)该方法的输入为日期类型数据,需要考虑二月的特殊性,闰年二月为29天,非闰年为28天,还需考虑十二月份大小月。

具体划分如下表所示。

输入条件

有效等价类

无效等价类

(1)闰年

(6)非法输入

(2)非闰年

(3)01,03,05,07,08,10,12(每月31天)

(7)非法输入

(4)04,06,09,11(每月30天)

(5)2月

基于以上等价类的划分,设计出该方法的测试样例如下表。

编号

输入

期望输出

覆盖编号

1

1960年1月1日

31

(1)(3)

2

1960年4月1日

30

(1)(4)

3

1960年2月1日

29

(1)(5)

4

1961年12月1日

31

(2)(3)

5

1961年4月1日

30

(2)(4)

6

1961年2月1日

28

(2)(5)

7

1960年0月1日

0

(1)(7)

8

1961年13月1日

0

(2)(7)

9

“abc”

0

(6)(8)

10

“”

0

(6)(8)

 对于表中的用例1-6的测试均通过,表明当输入合法时该方法的逻辑能够正常实现。

存在的缺陷:

  •  对输入参数的空值处理:代码没有对输入参数date进行空值检查,如果传入null作为参数,将导致NullPointerException异常。在方法的开头,应该对date进行空值检查并根据需求进行适当的处理,例如抛出异常或返回默认值。
  • 对于闰年判断的逻辑:在判断是否为闰年时,代码使用了传统的闰年判断方法。但这种方法无法处理年份为负数的情况,也无法正确处理超过四位数的年份。应该根据具体需求,使用更健壮的闰年判断逻辑,或者使用标准的日期库来执行这个判断。

 3.性能测试中聚合报告中有什么指标

  • (1)样本计数:测试期间发送的请求数量
  • (2)平均响应时间:所有样本的平均响应时间
  • (3)最小响应时间
  • (4)最大响应时间
  • (5)标准偏差:响应时间的统计偏差成都,衡量响应时间的波动性
  • (6)吞吐量:单位时间内处理的请求数量,通常以每秒为请求数,该值越大越好,表示服务器处理能力越强。
  • (7)错误百分比:测试期间,错误样本占总样本数的百分比,错误率越低越好,为0表示没有异常请求。对于一般业务来说错误率要在万分之一以下
  • (8)90%百分位数,按照响应时间排序后,90%的样本所对应的响应时间,响应时间越小表示接口响应越快,。实际工作中我们比较关注90%百分位这个值,表示90%的用户响应时间是小于578ms,平均响应时间参考意义不大
  • (9)Received KB/sec(接收速率):表示从服务器端接收数据的速率,即单位时间内接收的数据量。它以千字节/秒(KB/sec)为单位。该指标反映了客户端从服务器获取响应数据的速度。较高的接收速率表示网络连接稳定且服务器响应迅速。
  • (10)Sent KB/sec(发送速率):表示向服务器发送数据的速率,即单位时间内发送的数据量。同样以千字节/秒(KB/sec)为单位。该指标反映了客户端向服务器发送请求数据的速度。较高的发送速率表示客户端发送请求的效率较高。
  • 还可以提供图形化的数据展示,比如响应时间分布图,吞吐量图等

安全测试里有哪些风险

  1. 跨站脚本攻击(Cross-Site Scripting, XSS):允许攻击者在网站上注入恶意脚本代码,以获取用户信息或执行恶意操作。

  2. SQL注入(SQL Injection):通过构造恶意的SQL查询语句,攻击者可以绕过身份验证、访问未授权的数据或对数据库进行破坏性操作。

  3. 跨站请求伪造(Cross-Site Request Forgery, CSRF):攻击者通过诱导用户在另一个网站上执行操作,利用用户在目标网站上的身份执行未经授权的操作。

  4. 未经身份验证的访问(Unauthorized Access):缺乏适当的身份验证和权限控制机制,使得攻击者可以访问未授权的系统资源。

  5. 敏感信息泄露(Sensitive Information Disclosure):系统可能在错误消息、日志文件、响应头等处泄露敏感信息,如用户名、密码、数据库凭据等。

  6. 文件上传漏洞(File Upload Vulnerabilities):允许攻击者上传恶意文件,可能导致执行任意代码、文件覆盖或拒绝服务攻击。

  7. 会话管理漏洞(Session Management Vulnerabilities):涉及会话标识、会话超时、会话劫持等问题,可能导致身份伪造或会话劫持攻击。

  8. 不安全的直接对象引用(Insecure Direct Object References):缺乏适当的访问控制和验证机制,使得攻击者可以直接访问和操作受限资源。

  9. XML外部实体注入(XML External Entity, XXE):攻击者通过恶意的XML输入利用系统中的XML解析器,可能导致信息泄露、拒绝服务或远程命令执行。

  10. 拒绝服务攻击(Denial of Service, DoS):通过发送大量请求或恶意数据,使系统资源耗尽,导致系统无法正常响应合法用户的请求。


http://www.ppmy.cn/news/578558.html

相关文章

模拟电路系列分享-晶体管的四种状态

目录 概要 整体架构流程 技术名词解释 1.截止状态 2.放大状态 3.饱和状态 4.倒置状态 技术细节 小结 概要 提示:这里可以添加技术概要 晶体管有4种工作状态,分别是截止、放大、饱和,以及倒置。 整体架构流程 提示:这里可以添加…

[补充]托福口语21天——day2 课堂内容

day1 课堂:http://t.csdn.cn/cyvZm day1 语料:http://t.csdn.cn/syTBy 目录 1 时间准备 2 例题 3 答题步骤 3.1 范例 3.2 范例 4 连接词 5 完整回答 5.1 范例 5.2 范例 6 总结 背背背! 1. 如今的生活成本非常高。人们要付…

动态规划之下降路径最小和

1. 题目分析 题目链接选自力扣 : 下降路径最小和 如果光看这个题目说明的话, 是有点抽象的. 我们结合实例 1 来看 : 总的来说就是, 起始点是第一行中的任意一点, 每个点只有三个方向可以走即向下, 左下, 右下. 当到达最后一行的任意一点即算作到达终点. 期间不同的路径上不同…

技术问题epic无法启动 任务栏不断的闪 打不开

笔记本 从来没有装过epic 安装后打开一直在任务栏闪烁就是打不开重新下载 换低版本安装包和复制安装后的文件夹打开也是一样。

apk闪退_解决安卓手机闪退的通用办法!

原标题:解决安卓手机闪退的通用办法! 丫丫网资讯,很多安卓用户都会反应手机在使用过程中会出现手机闪退问题,今天这个问题也许可以解决了。一起来瞅瞅吧! 1、安卓手机由于其系统特性原因,在手机缓存过多的情…

王国纪元服务器不稳定,王国纪元闪退怎么解决 游戏闪退解决方法

王国纪元闪退怎么解决?最近玩家更新游戏之后,经常出现闪退的情况,在这里为你提供闪退解决方法: 游戏闪退解决方法 1、手机系统问题。对于安卓系统现在主流的系统都是4.0以上如果你手机的版本低于2.3.0,那么你该考虑升级…

避难所Android闪退,iOS/安卓版《辐射:避难所》Fallout Shelter攻略:闪退进不去解决办法...

辐射避难所Fallout Shelter闪退进不去解决办法: 1、网络异常 由于《辐射:避难所》(Fallout Shelter)是一款需要联网的游戏,所以如果我们的网络出现异常很容易造成辐射避难所闪退Fallout Shelter进不去的情况出现,如果网络连接异常…

行星边际2-planetSide2插件recursion tracker(00插件)の初体验

写在最前面: 整个使用过程中,注册账号这一步必须要科学上网,如果不能科学上网,务必先想办法获取到账号。 1、前往官网 官网 2、获取客户端 (官网首页点击Get Client 或者点这里,下载不动点这里&#x…