web项目测试总结要点及测试方法

web项目测试总结要点

web项目通用测试点整体

一、web项目测试总结要点

1、功能测试 2、性能测试(主要关注的是页面响应的时间) 3、用户界面测试/可用性测试 4、兼容性测试(浏览器和操作系统) 5、安全性测试 6、接口测试

(一)功能测试

  • 1)链接测试 链接是 web 应用系统的一个很重要的特征,主要是用于页面之间切换跳转,指导用户去一些不知道地址的页面的主要手段。 链接测试关注三点 ①链接是否按照指定那样,确实链接到了该链接的页面 ②测试该链接所链接的页面是否真实存在 ③保证系统中没有单独存在的页面,即没有链接指向,只能通过正确的URL地址才能访问(可用Xenu工具检测) Xenu Link Sleuth 是一款功能强大的检查网站死链接的软件。既可以打开一个本地网页文件来检查它的链接,也可以输入任何网址来检查。它可以分别列出网站的活链接以及死链接,连转向链接它都分析得一清二楚;支持多线程 ,并且可以把检查结果存储成文本文件或网页文件。 测试步骤: Step1:输入要测试的网站的网址 Step2:取消勾选检查外部链接(忽略检测跳转到外部网站的链接) Step3:执行测试,并检查是否存在 not found 的记录
  • 2)表单测试 表单一般指在界面进行数据提交操作的,包括新增和修改数据。例如注册。它涉及到的测试包括以下方面,每个点的验证都要考虑有效及无效输入的情况: ①输入框测试:长度、数据类型、必填、重复、空格、sql 注入以及一些业务相关约束; ②下拉框测试: 默认值、数据完整性/正确性、第一个/最后一个/中间一个选取、手动输入值模糊匹配、联动选择;业务常见选取的操作; ③图片、视频、表格、TXT等文件上传测试:图片:大小、尺寸、其他:格式、数量、文件内容的规则验证 ④表单提交按钮测试:是否支持回车/单击、快速多次点击(是否重复提交表单)网络中断、(若网)提交之后是否有提示、提交后内容是否加密、提交是否做权限校验控制、多人针对表单同时操作的测试场景测试。控件若设置也有快捷键,也要测
  • 3)cookies&seesion测试要点 cookies&seesion:处理会话,用于保存一定的用户信息,cookies是保存在本地,而seeions是保存在服务器。 •登录成功后,服务端是否生成有效的 session?session 信息是如何存储的? •服务端是否对 session 设置了过期时间?一种是不管是否进行会话,到了设置的固定时间 都会过期;一种是多长时间不进行会话,session 就会过期。 •退出登录,服务端应该清除或者无效 session •每一次会话服务端都需要验证 session 信息的有效性 •客户端 cookie 是否设置了过期时间?(如何不设置过期时间,关闭浏览器就会清除 cookie;如果设置了过期时间,到固定时间才会过期) •退出登录时,客户端是否清除了 cookie •cookie 中的是否有敏感信息?或者敏感信息是否加密? •HttpOnly 设置为 true(防止 cookie 值被页面脚本读取) •设置 Secure 为 true(保证 cookie 与 WEB 服务器之间的数据传输过程加密) •是否需要考虑客户端禁用 cookie 的情况? •session 和 cookie 需要考虑同一用户同一时间只支持单用户操作? ①有没有? ②时效 ③安全性
  • 4)程序设计语言测试 Web 设计语言版本的差异可以引起客户端或服务器端严重的问题,例如使用哪种版本的HTML 等。当在分布式环境中开发时,开发人员都不在一起,这个问题就显得尤为重要。除了 HTML 的版本问题外,不同的脚本语言,例如 Java、Javascrīpt、 ActiveX、VBscrīpt 或 Perl 等也要进行验证。 (主要验证编程语言和脚本语言是否一致)
  • 5)数据库测试 在 Web 应用技术中,数据库起着重要的作用,数据库为 Web 应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。最常用的数据库类型是关系型数据库,可以使用 SQL 对信息进行处理。在使用了数据库的 Web 应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。

    (二)性能测试

    对于功能测试层面来说,主要关注的是连接速度测试 ①web系统响应时间 ②超时的限制

(三)用户界面测/可用性测试

  • ①导航测试: •导航是否直观?•Web 系统的主要部分是否通过主页存取 •Web 系统的页面结构、导航、菜单、连接的风格是否一致。 •Web 应用系统导航帮助要尽可能的准确。
  • ②图形测试: 一个 Web 应用系统的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。图形测试一般的内容有: •所有页面字体的风格是否一致 •背景颜色与字体颜色和前景颜色是否搭配 •每个页面的提示字体的颜色、格式是否统一准确 。
  • ③内容测试:内容测试用来检验Web网站提供信息的正确性、准确性和相关性。
  • ④整体内容测试 整体界面是指整个Web应用系统的页面结构设计,是否给用户的一个整体感。

    (四)兼容性测试

    ①跨平台测试:Windows、MacOS、Linux ②浏览器测试:IE/Wndows Edge/Google/火狐/其他国产市场占有率很高的浏览器 ③分辨率兼容性测试:1920 × 1080 2k 4k 1366 × 728 1280 × 800 ④连接速率测试 ⑤组合测试

    (五)安全性测试

    ①登录、安全:现在的 Web 应用系统基本采用先注册,后登录的方式。因此,必须测试有效和无效的用户名和密码,还需要注意到是否大小写敏感,可以测试多少次的登录限制,是否可以不登录而直接浏览某个页面。 ②日志文件: Linux (验证两点1、有没有记录2、这条记录是否记录正确)为了保证 Web 应用系统的安全性,需要测试相关信息是否写进了日志文件、是否可追踪。 ③目录设置:拷贝 Web 应用程序的某个功能点的 URL 地址,然后打开新的页面输入该URL 地址看其是否能跨过系统的登录模块直接进入该功能点。 ④超时限制:验证 Web 应用系统是否有超时的限制?如用户登录后在一定时间内(例如15 分钟)没有进行任何操作,再次进行操作时是否需要重新登录才能正常使用。 ⑤简单的web安全漏洞:XSS、SQL注入。一般采用工具直接扫描,如: IBMAppscan HP webinspect (六)接口测试 ①服务器接口 ②外部接口 ③错误处理 后续章节会详细讲解接口测试,这里只做简单介绍。

    二、web项目测试方法

    1、添加功能 2、修改功能 3、删除功能 4、查询功能 5、翻页功能 6、导入导出,上传、下载

    (一)添加功测试方法及要点:

    •关于必填项的测试: 目的:验证界面上必填字段控制与实际系统中必填项的控制是否一致 1)只填写界面上标识的必填数据项(即标识号的数据项)。 2)对于必填项在页面上是否有提示信息(例如必填项加注释,且在页面上是否存在的含义)。 3)各个必填项分别为空,进行保存。 4)各个必填项分别为空格,进行保存。 •关于唯一性的测试: 目的:验证界面上不允许重复的数据项控制与实际需求中不允许重复的控制是否一致。 1)所有允许重复的数据项分别输入或选择系统中已经存在的信息,其它数据为合法数据,进行保存。 2)所有不允许重复的数据项分别输入系统中已经存在的数据,进行保存。 3)所有不允许重复的数据项分别将重复的内容加上前、后空格,进行保存。 4)所有不允许重复的数据项是否区分大小写? •关于输入项长度的测试: 1)各个数据项分别输入超出需求中最大有效长度的内容,其它数据项为合法数据,进行 保存。 2)各个数据项分别输入等于需求中最大有效长度的内容,其它数据项为合法数据,进行保存。 3)各个数据项分别输入小于需求中最小有效的长度的内容,其它数据项为合法数据,进行保存。 4)各个数据项分别输入小于需求中最小有效的长度的内容,其它数据项为合法数据,进行保存。 5)各个数据项分别输入在长度范围内的内容,其它数据项为合法数据,进行保存。 注意:测试大于、小于边界时尽量采用刚刚小于、刚刚大于的数据进行测试。 例如:密码长度范围为[4-15],则需要密码的长度分别输入为 3、4、10、15、16 位,进行测试。 •关于输入内容限制的测试: 目的:验证需求中允许输入的字符与系统实际限制是否一致。 1)各数据项分别输入非法字符。 2)各数据项分别输入特殊字符(例如:通配符、HTML 代码等特殊字符)。 3)对于允许输入汉字的数据项分别输入汉字(验证是否显示正确)。 4)若当输入非法数据时不允许输入,则需要验证粘贴的方式是否可以通过。 5)各个数据项分别输入各种符合要求的数据,进行保存。 例如:系统中允许输入“数字、字母、下划线”,则测试添加时应该对数字、字母、下划线是否允许保存均进行判断。 •其它方面的测试 1)添加完数据将其删除后又重新添加。 2)添加的数据为非法数据时点击【Enter】键。 3)输入一些提交失败的数据,验证是否给出相应的提示并且界面上添加的数据是否仍保留。 4)成功提交后,进行 back 然后再提交。 5)成功添加数据后相关联模块是否同步更新。 6)若页面存在【重置】按钮: a、进入页面直接点击【重置】按钮。 b、所有字段都输入数据,点击【重置】按钮。 c、单选按钮、下拉列表、复选框等都变成非默认的状态,点击【重置】按钮。 7)若页面存在【取消】或【返回】按钮:输入数据后,点击此按钮。 8)验证保存时是否会给予相应的提示?若存在提示信息是否按照所选项执行?即: a、点击【确定】按钮是否执行保存操作。 b、点击【取消】按钮是否撤销保存操作且界面上添 加的数据是否仍保留。

    (二) 修改功能测试方法及要点

    测试修改功能与添加功能的要点有一部分相同。此外还需要对以下的内容进行测试: ①检查添加和修改信息的限制是否一致。 1)添加中规定必填的数据项,修改时是否也为必填。 2)添加中规定输入的数据类型,修改时是否也为此类型。 3)添加中规定不允许重复的数据项,修改时是否 也不允许重复。 4)添加时规定输入的长度范围,修改时是否也为此范围。 ②进入修改页面,页面数据显示的是否正确,是否为添加时的数据?特别需要注意下拉列 表、单选按钮、复选框等数据显示是否正确。 ③不允许重复的数据项是否允许重复,允许重复的数据是否允许重复?特别需要注意是否允许与自己重复。 ④需求中不允许修改的数据项是否允许修改? ⑤成功修改数据后相关联的模块是否同步更新? ⑥进入修改页面,若页面存在【重置】按钮。则需要验证修改数据后,点击【重置】按钮,数据是重置为空还是重置成进入页面时的数据?特别需要注意下拉列表、单选按钮、复选 框等数据显示是否正确。

    (三)删除功能测试方法及要点

    ①不选择数据,进行删除。 ②删除一个已经被删除的数据。 方法:在浏览器中同时打开 2 个相同的页面,在其中的一个页面将数据删除,删除成功后,在另一个页面不刷新的情况下也删除此条数据。 ③在末页将所有的数据删除,查看页面跳转是否正确? ④若同时存在批量删除和单条删除的功能,则需要验证选择多条数据后,点击单条删除功能的按钮,系统是删除一条数据还是删除多条数据? ⑤删除时是否会给予相应的提示? 若存在提示信息是否按所选项执行?即: 1)点击【确定】按钮是否执行删除操作? 2)点击【取消】按钮是否撤销删除操作? ⑥删除存在关联关系的数据,是否允许删除? 1)若不允许删除:提示信息是否正确并且是否说明删除失败的原因? 2)若允许删除:相关联的数据如何处理?是否给予明确的提示信息让用户了解删除后的后果? ⑦删除正在被使用的数据查看系统如何处理?

    (四)查询功能测试方法及要点

    ①不输入查询条件,进行查询。 ②是否能按照系统默认的查询条件进行查询。 ③单独遍历各个查询条件: 1)输入的查询条件为系统中不存在的。 2)执行精确查询。 3)执行模糊查询。 4)查询条件中加上前、后空格。 5)输入特殊字符进行查询(通配符、双引号等)。 6)对于在系统中大小写没有区分的数据项,查询条件分别输入大写和小写进行查询。 ④各种查询条件随机进行组合查询。 ⑤以不同的权限登录时,统计、查询是否正确。 ⑥验证执行查询后,查询条件是否保留?(尤其注意下拉列表数据显示是否正确) ⑦设置条件查询出记录后,翻到最后一页,再更改查询条件进行查询(但第一个查询条件查询出来的记录页数必须多于第二个查询条件查询出来的记录页数)。 ⑧系统存在多个查询条件时,是否存在【重置】按钮?若存在【重置】按钮,重置按钮是否完成其功能? ⑨输入查询条件后,点击【回车】键,验证系统如何处理? ⑩在查询或统计大数据量时,系统是否允许终止该操作?

    (五)翻页功能测试方法及要点

    翻页功能一般测试以下几个方面: ①四个翻页按钮(首页、上一页、下一页、尾页) 1)有、无数据时控件的显示情况是否正确? 2)在非首页和非末页时,四个按钮功能是否正确? 3)当页面位置为首页时,点击【上一页】、【首页】按钮。 4)当页面位置为末页时,点击【下一页】、【末页】按钮。 ②指定跳转页(输入页码进行跳转) 1)页码为空,进行跳转。 2)页码为空格,进行跳转。 3)页码为负数,进行跳转。 4)页码输入小数,进行跳转。 5)页码输入的为非数字(字母、汉字、特殊字符等)。 6)页码输入 0 进行跳转。 7)页码输入的为刚刚大于总页数的数字。 8)页码输入超长数字。 ③总页数、当前页数 1)总页数是否等于总的记录数/指定每页条数?2)当前页数、总页数显示是否正确? ④指定每页显示记录数 1)是否有默认的指定每页显示条数? 2)指定每页的条数后,列表显示的记录数、总页数是否正确? 3)每页记录数若允许手动输入,输入非法字符系统如何处理?如:记录数为空、空格、 非数字、0。 ⑤其他方面 翻页后,列表中的记录是否仍按照指定的排序列进行了排序?

    (六)上传附件功能测试方法及要点

    ① 上传文件大小的验证 1)上传一个 0K 的文件。 2)总大小稍小于限制大小的文件。 3)总大小等于限制大小的文件。 4)总大小稍大于限制的文件。 ②上传文件名称的限制 1)文件名称中包含特殊字符 2)文件名称全为汉字 3)文件名称全为字母 4)文件名称全为数字 5)文件名称为汉字、字母、数字混合 6)文件名称过长 ③上传文件格式的限制 1)上传格式符合要求的文件 2)上传格式不符合要求的文件 ④上传文件的其它限制 1)不选择文件进行上传。 2)上传一个正在打开的文件。 3)文件重复上传(即上传多次相同的文件)。 4)上传文件时若存在多个上传框: a. 多个框中上传相同的文件 b. 文件间隔着上传(即第一个框上传文件,第二个框不上传文件,第三个框上传文件…)。 5)上传文件的路径若允许手动输入: a. 手动输入正确的文件路径进行上传 b. 手动输入错误的文件路径进行上传

    (七)导入功能测试方法及要点

    测试导入功能时与上传文件方法有一部分相同。此外还需要对以下的内容进行测试: ①文件内的数据都符合要求。 ②文件内的数据部分符合要求,部分不符合要求。 ③文件内的数据全部不符合要求。 ④文件内的数据的若干条完全相同。 ⑤文件内容的个别行为空行(例如:首行、中间行等)。 ⑥导入存在大量数据的文件,验证系统如何处理:是否允许导入?若允许导入是否存在关于等待的提示信息?是否可以取消此操作? ⑦若导入的文件为 excel 类型,则将工作表名称 Sheet1 修改为其它名称。 ⑧导入的文件内容与系统实际限制是否一致: 1)在系统中不允许重复的数据项录入系统中已 经存在的数据进行导入。 2)在系统中必填的数据项为空进行导入。 3)在系统中存在长度限制的数据项输入大于、等于系统要求最大长度的数据进行导入。 4)在系统中存在长度限制的数据项输入小于、等于系统要求最小长度的数据进行导入。 5)在系统中对输入内容存在限制的数据项输入非法字符进行导入。

    (八)导出功能测试方法及要点

    常见方法: ①导出时是否允许选择路径? ②列表为空时进行导出操作。 ③列表中的数据为多页时进行导出操作。 ④导出时选择直接打开文件,查看导出结果是否正确? ⑤导出时选择保存文件,查看文件格式和导出内容是否正确? ⑥若存在导出查询结果功能,则需要验证执行查询后导出的结果是否正确? ⑦若存在选择导出的功能,则需要验证: 1)选择数据后进行导出的结果是否正确? 2)不选择数据进行导出,系统如何处理? ⑧导出大量的数据,验证时间是否在合理时间范围内。 ⑨导出时选择存放位置的磁盘空间已满,验证系统如何处理?⑩导出时选择存放位置的文件夹为只读文件夹,验证导出时系统如何处理?

    (九)界面测试方法及要点

    界面测试是从最终的使用者用户的角度来看软件,软件难以理解,不易使用就是软件缺陷。 可以从以下几个方面重点来检查用户界面: ①易用性检查:验证软件是否易于理解、是否方便使用。 ②正确性检查:检查页面上的表单、按钮、窗体、提示信息、文字拼写等是否正确以及是否存在错别字。 ③一致性检查: 1)系统页面的风格是否一致,如字的大小、颜色、字体要相同。 2)提示信息的表达方式是否一致。 3)按钮排列顺序是否一致。 4)back, cancel 等按钮跳转页面处理是否一致。 5)相同字段的名称、长度、类型在不同位置是否一致。 ④友好性检查 1)提示信息是否友好。 2)执行风险操作时系统是否给出提示信息让用户确认是否继续操作。 3)页面分辨率检查,在各种分辨率浏览系统检查系统界面友好性。 4)页面进行最大化、最小化还原时是否做了相应的处理。 ⑤合理性检查:进行添加、修改、删除、返回等操作后,查看信息回到的页面是否合理? ⑥其它方面检查
ch14
JSRUN前端笔记, 是针对前端工程师开放的一个笔记分享平台,是前端工程师记录重点、分享经验的一个笔记本。JSRUN前端采用的 MarkDown 语法 (极客专用语法), 这里属于IT工程师。