如何测试一个网页登录界面
具体需求: 有一个登陆页面,(假如上面有2个textbox, 一个提交按钮。 请针对这个页面设计30个以上的test case.)
考察目的: 面试者是否熟悉各种测试方法,是否有丰富的Web测试经验, 是否了解Web开发,以及设计Test case的能力
首先,你要了解用户的需求,比如
这个登录界面应该是弹出窗口式的,还是直接在网页里面。(如果面试官说已经在登录页面了应该可以不用考虑这个吧)
对用户名的长度,和密码的强度(就是是不是必须多少位,大小写,特殊字符混搭)等。
还有比如用户对界面的美观是不是有特殊的要求?(即是否要进行UI测试)。
剩下的就是设计用例了 ,等价类,边界值等等。
注:任何测试,都是从了解 *需求* 开始的!
1功能测试(Function test)
什么都不输入,点击提交按钮,看提示信息。(非空检查)
输入正确的用户名和密码,点击提交按钮,验证是否能正确登录。
登录成功后能否跳转到正确的页面
输入错误的用户名或密码, 验证登录会失败,并提示相应的错误信息(错误校验)
用户名和密码,如果太短或者太长,应该怎么处理(边界值分析法)
用户名和密码,有特殊字符(比如空格等),和其他非英文的情况
用户名和密码,是否区分大小写
输入密码的时候,大写键盘开启的时候要有提示信息。
密码是否加密显示(星号圆点等)
用户名和密码前后有空格的处理
首次打开登录页面,光标默认定位在用户名输入框中。
如果有多种登录方式,各种登录方式是否相互影响。
如果账号(如手机号)未被注册过,是否显示账户未注册并“跳转到注册页面”
记住用户名及密码的功能,且下次登录时是否显示该用户名及密码
登录失败后,不能记录密码的功能
页面是否有忘记密码提示
注册、忘记密码按钮(或者说链接)是否正确(指跳转)
若使用初始密码登录时是否会提示修改密码。
牵扯到验证码的,还要考虑文字是否扭曲过度导致辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用
用手机号登录,是否可以在规定时间内将验证码发送到用户手机。
如果验证码具有时效性,需要分别验证时效内和时效外验证码的有效性。
2界面测试(UI Test)
- 与产品原型图/UI效果是否一致
- 界面的设计风格是否统一
- 布局是否合理,输入框和按钮是否对齐
- 输入框和按钮的长度,高度是否复合要求
- 按钮的大小是否易于点击
- 界面是否清晰合理美观,简洁易懂;图片、颜色、字体是否显示正确 、无乱码、无错别字
3可用性测试(Usability Test)
- 用户界面是否符合标准和规范。
- 是否符合用户操作习惯、易理解、易操作
- 页面跳转时间是否满足一般用户的用户体验。
- 窗口是否可以最大化、最小化、改变窗口的打小,并移动。
- 是否可以全用键盘操作,是否有快捷键(撤销、复制、粘贴、backspace(浏览器后退)、ctrl+鼠标滑动放大/缩小窗口)
- 输入框能否可以以Tab键切换
- 输入用户名,密码后按回车,是否可以登录
4性能测试(performance test)
- 单用户登录的响应时间是否小于3秒
- 高并发场景下用户登录的响应时间是否小于 5 秒;
- 用户并发登录的最大登入量
- 高并发场景下服务端的监控指标是否符合预期;
- 高集合点并发场景下,是否存在资源死锁和不合理的资源等待;
- 单用户频繁操作:多次退出、登录,是否对性能有影响,或提示登入次数过多等
- 长时间大量用户连续登录和登出,服务器端是否存在内存泄漏。
- 闪退、系统崩溃(针对手机端)
- 内存满了是否登录成功
5冲突性测试(中断测试)
- 登录时切换到其他页面再切回来,页面是否刷新、已经输入的内容是否丢失、如果点击登录按钮的同时切换页面,再切回来是否登录成功
- 笔记本合上再打开
- 插拔耳机、数据线
- 网络延迟、弱网、断网等情况下登录页面的显示
6网络测试
- IPV4、IPV6
- 4G、5G(可能针对手机端多一点)
7兼容性测试(Compatibility Test)
- 主流的浏览器以及不同版本下能否显示正常已经功能正常(IE,6,7,8,9, Firefox, Chrome, Safari,等)
- 不同的平台是否能正常工作,比如Windows, Mac
- 移动设备上是否正常工作,比如Iphone, Andriod
- 不同的分辨率
- 不同的浏览器大小 (浏览器最大化, 和非最大化)
8安全性测试(Security test)
密码是否允许复制粘贴
用户名和密码的输入框,输入典型的“SQL 注入攻击”字符串,验证系统的返回页面。(应该屏蔽SQL 注入攻击)
用户名和密码的输入框,分别输入典型的“XSS 跨站脚本攻击”字符串,验证系统行为是否被篡改。(应该禁止输入脚本 (防止XSS攻击))
错误登录的次数限制(防止暴力破解)
密码输入框内的密码是否都可以在页面源码模式下被查看。
密码在网络传输中、日志中,后台存储中是否加密。
用户名和密码是否通过加密的方式,发送给Web服务器。
用户名和密码的验证,应该用服务器端验证, 而不能单单在客户端用javascript验证
不登录的情况下,在浏览器中直接输入登录成功后的URL地址,验证是否会重新定向到用户登录界面。
考虑是否支持多用户在同一机器上登录
考虑一用户在多台机器上登录
同一账号在相同浏览器,不同浏览器,不同终端登录时的互斥性。
对登录设备和地区检测。
是否可以用抓包工具抓到的请求包直接登录。
登录成功后生成的Cookie,是否是httponly (否则容易被脚本盗取)
9本地化测试 (Localization test)
- 不同语言环境下,页面的显示是否正确。
10软件辅助性测试 (Accessibility test)
- 软件是否向残疾用户提供足够的辅助功能
- 高对比度下能否显示正常 (视力不好的人、色盲等使用)
给你一个网站,你如何测试?
首先,查找需求说明、网站设计等相关文档,分析测试需求。
制定测试计划,确定测试范围和测试策略,一般包括以下几个部分:功能性测试;界面测试;性能测试;数据库测试;安全性测试;兼容性测试
设计测试用例:
功能性测试可以包括,但不限于以下几个方面:
- 链接测试。链接是否正确跳转,是否存在空页面和无效页面,是否有不正确的出错信息返回。
- 提交功能的测试。
- 多媒体元素是否可以正确加载和显示。
- 多语言支持是否能够正确显示选择的语言等。
界面测试可以包括但不限于一下几个方面:
- 页面是否风格统一,美观
- 页面布局是否合理,重点内容和热点内容是否突出
- 控件是否正常使用
- 对于必须但未安装的控件,是否提供自动下载并安装的功能
- 文字检查
性能测试一般从以下两个方面考虑:
压力测试;负载测试;强度测试
数据库测试要具体决定是否需要开展。数据库一般需要考虑连结性,对数据的存取操作,数据内容的验证等方面。
安全性测试:
- 基本的登录功能的检查
- 是否存在溢出错误,导致系统崩溃或者权限泄露
- 相关开发语言的常见安全性问题检查,例如SQL注入等
- 如果需要高级的安全性测试,确定获得专业安全公司的帮助,外包测试,或者获取支持
兼容性测试,根据需求说明的内容,确定支持的平台组合:
- 浏览器的兼容性;
- 操作系统的兼容性;
- 软件平台的兼容性;
- 数据库的兼容性
开展测试,并记录缺陷。合理的安排调整测试进度,提前获取测试所需的资源,建立管理体系(例如,需求变更、风险、配置、测试文档、缺陷报告、人力资源等内容)。
定期评审,对测试进行评估和总结,调整测试的内容。
原文链接:https://www.jianshu.com/p/dd4c5a52b86d
如何测试一个网页登录界面相关推荐
- 如何测试一个网页登陆界面
具体需求: 有一个登陆页面, (假如上面有2个textbox, 一个提交按钮. 请针对这个页面设计30个以上的test case.) 此题的考察目的: 面试者是否熟悉各种测试方法,是否有丰富的Web测 ...
- 用idea做一个网页登录界面
在完成创建java类后,在login中写入代码 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throw ...
- 如何用idea做一个简易的网页登录界面
在上一节课的内容基础上做一个简易的网页登录界面--18级软工1班03 打开idea后打开上一节课的工程文件(一般在打开idea软件的同时,idea会默认打开上一次的文件)并在左边列表的main文件夹下 ...
- 怎么用Android做登录界面,利用Android怎么制作一个APP登录界面
利用Android怎么制作一个APP登录界面 发布时间:2020-12-02 17:09:10 来源:亿速云 阅读:79 作者:Leah 这期内容当中小编将会给大家带来有关利用Android怎么制作一 ...
- finereport 登录界面的代码文件_【干货下载】多彩包含网页登录界面等4款WEB模板素材作品集源文件...
老菜为今天准备的是多彩包含网页登录界面等4款WEB模板素材作品集源文件,SKETCH源文件炫酷页面设计模板,适合作品集展示.收下吧~ 如何下载这套资源? 方法1:加入"知识星球"更 ...
- 舒服的网页登录界面设计灵感
登录注册就是"一扇门",一扇让产品和用户真正互通的门,让产品可以给用户体现出更多价值的门. 所以这个门一定要: 够宽.门槛够低.一直开着.记忆每次进出- 设计师交流社区 集设网 w ...
- 如何利用宝塔面板+JavaWeb+MySQL设计一个注册登录界面
最近闲来无事,想设计一个网页注册登录的页面.因为看到好多人的毕业设计都是和JavaWeb有关的,所以不做白不做,咱们大三就给毕业设计开个头! 当然做一个网页不发布到服务器,难道数据库留给自己一个人看? ...
- Vue+ElementUI一个简单登录界面
1.项目搭建 开始工作参考这个博客 创建一一个名为hello-vue 的工程vue init webpack hello-vue 安装依赖,我们需要安装vue-router.element-ui. s ...
- 使用eclipse创建一个web登录界面项目
本人已转入头条------>>坐公交也用券 JAVA环境配置请看这篇----------------------->>>>配置JAVA eclipse软件下载URL ...
最新文章
- php数据库额外属性,PHP神秘的额外数据库插入
- jittor和pytorch生成网络对比之sgan
- jdbc动态查询语句_Java修行第037天--JDBC技术
- 计算长方形的周长和面积(类和对象)_JAVA
- SAP 质检使用非物料基本单位
- OpenCV学习笔记(一) 环境配置
- System.InvalidOperationException : 不应有 Response xmlns=''。
- Job make U funck Uself!!!
- ccs6 linux安装教程,【图片】【吧主帖】在LINUX(ubuntu)系统下装CCSv6方法(原创)【dsp吧】_百度贴吧...
- java使用枚举做审核_JAVA—枚举
- python绘制糖葫芦_python简单爬虫(一)
- word关闭首字母自动大写
- Hadoop伪集群部署
- 《监控》这本书让我爱不释手
- 【POJ3070】斐波那契数列f[n]的后四位,n达1e+9(矩阵快速幂模版题)
- python模拟超市抹零_Python基础练习二超市存包柜模拟
- Visual Studio 2013官方简体中文专业版/旗舰版/高级版下载(含激活序列号)
- 使用yigo遇到的小问题
- Python机器学习13——主成分分析
- 力控关节机器人(关节扭矩传感器力控)