admin管理员组

文章数量:1530354

一、功能测试

web测试的六大部分:①链接测试、②表单测试、③搜索测试、④删除测试、⑤cookies、session测试、⑥数据库测试

1.1链接测试

①确认链接跳转的页面是否正确;
②确认链接的页面是否存在;
③确认链接的页面并不是孤立存在的页面;

1.2表单测试

表单一般指在页面进行数据提交的操作,包括增、删、改数据;
①输入框测试
· 长度
· 数据类型
· 必填与非必填
· 是否自动去掉空格
· 是否支持换行操作
· 是否支持输入特殊字符
· 是否支持模糊查询
· SQL注入
· …
SQL注入:SQL注入(SQL Injection)是一种常见的Web安全漏洞,是指 web应用程序 对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的 SQL语句 ,在管理员不知情的情况下实现非法操作,以此来实现欺骗 数据库服务器 执行非授权的任意查询,从而进一步得到相应的数据信息。
②下拉框测试
· 枚举值验证
· 是否支持多选/单选
· 枚举值过长时,在展示时是否被遮挡
· 在后台对枚举值长度进行更改后查看前台的展示是否有影响
· 枚举值过多时滚动滑动条,看滑动条是否能滑到数据底部
· 若支持输入查询,则需要看是否支持模糊查询
· 多个下拉框有关联关系时,查看下拉框是否有做联动
· …
③文件上传测试
· 验证上传附件时是否支持任意格式附件
· 在指定附件格式的情况下,能否上传其它格式附件
· 上传附件的大小是否有限制
· 上传附件时是否支持上传多个附件
· 如果对上传的附件内容有格式要求,则需要对上传的附件内容进行校验
· 如果上传的是图片,需要验证对图片的清晰度、格式、大小是否有要求
· …
④表单提交按钮测试
· 是否支持点击回车按钮即查询
· 快速多次点击提交按钮,是否重复提交表单
· 网络中断(弱网)提交
· 提交之后,是否有提交成功提示
· 多人同时对表单进行操作
· …

1.3搜索测试

搜索条件一般为两种情况:输入框、下拉框,对于一个界面有查个查询条件的,可以依次增加查询条件进行查询;
①单个条件查询:模糊搜索、超长搜索、无效值搜索、为空搜索;
②两个条件查询:若两个查询条件无关联,则可以按照单个条件查询的方法进行查询;若两个查询条件有关联,则需要确保两个组合的正确性,验证两个组合的所有情况;
③多个条件查询:选择3~all个查询框进行测试,可以综合单个条件查询和多个条件查询方法进行测试;
④默认条件查询:验证默认条件下查询出的数据是否与默认展示的数据一致;
⑤根据业务需要,对重要的查询条件进行反复查询验证;
⑥时间搜索框: 开始时间≤结束时间,开始时间≤当前时间,例如:合同开始时间/出生日期都需要大于当前时间;定时任务的时间则需要大于当前时间;

1.4删除测试

①点击删除按钮时,是否有提示信息;
②点击删除后,验证数据有没有被删除掉;
③对于某些特殊信息来说,数据删除后,是否能重新增加被删除的数据(例如:账号、组织、…);
④是否支持批量删除操作;
⑤删除关联性数据时,是否有提示信息;
⑥删除数据后,页面所展示的数据总条数有没有变化;

1.5cookies/session测试

理论上来说,一个用户的所有请求都应该术语同一个会话,多个用户不应该被混淆。web应用程序采用http协议进行数据传输,而http协议是无状态的协议,所以需要跟踪会话。
cookies/session通常用来存储用户信息,Cookie通过在客户端记录信息确定用户身份,session通过在服务器端记录信息确定用户身份。

1.5.1 cookie测试

①首次登录时,需要查看cookie的存放位置是否在默认位置;若更改cookie的存放位置,则要验证cookie是否保存到了指定位置;
②非首次登录:
· 如若不是第一次登录,则可以查看是否可以直接登录成功(例如CSDN、浏览器、…);
· 修改cookie存放位置后,重新登录(信息应该存放到了最新设置的存储位置处);
· 修改用户名及密码,查看cookie中的信息发生变更;
③安全检查:
· cookie信息是否加密(应加密);
· 加密是否正确(使用解密程序查看,加密是否正确);
· cookie失效时间检查(s):如果为正数,则该cookie在maxAge(最大生命);如果为负数,则为临时cookie,那么这个cookie不应该以任何形式被保留下来,在关闭浏览器时,cookie即失效;若为0,则表示删除该cookie;默认值为-1;

1.6数据库测试

①数据的正确性测试:数据有无乱码,在界面上对数据进行增、删、改操作时,要查看库中数据是否有增加、删除/状态标识变更、变化;
②数据库构造:数据库配置文件修改后不能访问数据库、构造异常的数据是否能在界面显示、加密字段是否密文显示;
③数据同步测试:构造重复数据,验证数据库是否做了去重;是否有对异常数据的容错处理机制(建议正常数据入库成功,异常数据入库失败并且单独保存在异常数据表中,也同时将错误数据展示在界面中);是否有历史数据处理机制;敏感字段的值是否按照要求进行了安全的加密处理;
④目标表被锁时,解锁机制是否易用;
⑤源数据在同步过程中网络异常中断,数据的处理方式;

二、性能测试

一个web请求的处理包括以下步骤:

  • 客户发送请求
  • web server接收到请求,进行处理
  • web server向DB获取数据
  • web server生成用户的object(页面),返回给用户。给客户发送请求开始到最后一个字节的时间称为响应时间。

2.1 业务指标

2.1.1 事务(Transaction)

在web性能测试中,一个事务表示一个“从用户发送请求->web server接收到请求,进行处理->web server向DB获取数据->生成用户的object(页面),返回用户”的过程,一般的响应时间都是针对事务而言的。

2.1.2 请求响应时间

请求响应时间指的是从客户端发起的一个请求开始,到客户端接收到从服务器端返回的响应结束,这个过程所耗费的时间。在某些工具中,响应通常会被称为“TTLB”,即“time tolast byte”,意思是从发起一个请求开示到客户端接收到最后一个字节的响应所耗费的时间,响应时间的单位一般为s/m。即:响应时间=网络响应时间+应用程序响应时间。
国外的3/5/10原则

  • 在3s之内,页面给予用户响应并有所显示,可认为是“很不错的”;
  • 在3~5s内,页面给予用户响应并有所显示,可认为是“好的”;
  • 在5~10内,页面给予用户响应并有所显示,可认为是“勉强接受的”;
  • 超过10s,用户很可能不会再继续等待。

2.1.3 事务响应时间

事务可能由一系列请求组成,事务的响应时间主要是针对用户而言,术语宏观上的概念,是为了向用户说明业务响应时间而提出的。事务响应时间是直接衡量系统性能的参数。

2.1.4 并发用户数

并发有两种情况:①所有的用户在同一时刻做同一件事情或同一个操作/所有用户在同一时刻做完全一样的操作;②所有用户在对系统进行操作,这些操作可以是相同的也可以是不同的;
②是包含①的并发,②更加接近实际使用情况。对于web性能测试而言,两种并发情况都是需要测试的

三、兼容性测试

web兼容性测试有:操作系统、浏览器、分辨率和网速方面兼容性测试;
兼容性测试是指在待测项目在 特定的硬件平台上,不同的应用软件之间,不同的操作系统平台上,在不同的网络环境中能正常运行的测试。

3.1 兼容性测试的目的

待测项目在不同的操作系统平台上运行,包括待测项目能在同一操作系统的不同平台上正常运行;待测项目能与与之相关的软件/系统不发生冲突; 待测项目能在制定的硬件环境中正常运行;待测项目能在不同的网络环境中正常运行;

3.2 操作系统兼容性

市场上常见的操作系统有:Windows、Linux、Mac等操作系统,同一个应用在不同的操作系统下可能会有兼容性问题。

3.3 浏览器兼容性

国内主要流行的三种浏览器内核:IE、Firefox、Chrome。

  • IE内核常见的浏览器:IE10、IE11、360安全浏览器(兼容模式)、360极速浏览器(兼容模式)、搜狗浏览器(兼容模式)、QQ浏览器等。
  • Firefox内核常见的浏览器就是火狐浏览器(Firefox)。
  • Chrome内核常见的浏览器:Chrome、360安全浏览器(极速模式)、360极速浏览器(极速模式)、搜狗浏览器(高速模式)。

在进行浏览器测试时主要是针对主流浏览器进行测试,如果是客户使用(固定的人员使用)则建议提前问好客户所使用的浏览器,再进行针对性测试。

3.4 分辨率兼容性

同一个页面在不同的分辨率下,显示的样式可能会不一样,所以需要进行分辨率的兼容性测试,可以通过浏览器的缩放比例进行不同分辨率的测试。

3.5 网速测试/弱网测试

网速测试可以使用fiddler对网速进行更改;
弱网测试的目的就是尽可能保证用户体验,关注的关键点包含:

  • 页面响应时间是否可以接受:热启动时间、冷启动时间、页面切换、前后台切换等;
  • 页面呈现是否完整一致;
  • 超时文案是否符合定义,异常信息是否显示正常;
  • 是否有超时重连;
  • 安全角度:是否会发生对DNS劫持、登录ip更换频繁、单点登录异常等;
  • 大流量事件风险:是否会在弱网情况下更新app、下载文件等;
    单点登录:单点登录全称Single Sign On(以下简称SSO),是指在多系统应用群中登录一个系统,便可在其他所有系统中得到授权而无需再次登录,包括单点登录与单点注销两部分。

四、bug定位与跟踪

4.1 前后台bug定位

4.1.1 前台bug定位

前台的bug通常是和功能、界面和兼容性等有关系;
定位:按F12在控制台中查看报错信息,对于出错的js可以在sources下查看对应报错的资源文件,或者使用抓包工具。
bug注意点

  • 网站前台权限控制:没有权限的用户不能通过直接输入url的方式进行访问,必须登录成功后才可以访问。在单个界面进行测试时w3c测试时需要关闭权限。
  • 页面路径需要注意,可能同一个界面会有很多个入口,这时页面左上角的路径就需要和自己点击界面进入的路径一致。
  • http和https:①https是一种安全链接,需要证书,所以在系统中客户会要求在某些关键的地方加上安全链接。此时,也需要对不需要安全链接的地方进行测试,确保不需要安全链接的地方没有增加安全链接;②如果要打开https开头的网站,就需要安装SSL证书,只有安装了SSL证书的网站并且开启了443端口,才可以通过https加密协议访问;

4.1.2后台bug定位

系统使用工具获取日志,或者服务器控制方面的操作(关闭或者重启)
重启的情况:①热部署(新增部分功能,或者修改部分bug)②发布新版本(整个系统)③内存溢出,此时重启服务器即可

本文标签: 测试web