界面测试,最多的就是各种控件的功能测试,只有掌握了其测试要点,了解测试方法,总结各种测试情景,才能熟练测试Web页面。

一、输入框

输入框分为文本输入框,数字输入框。一般使用在填写输入的内容上,比如名称,属性等,有新建和编辑类两种。在检查的时候需要关注一些输入框的特性:

  • 输入的字符长度是否符合要求,输入最小长度,最小长度-1,最大长度,最大长度+1,以及超长的字符检查是否符合预期

  • 输入特殊字符,特别是&、单引号’、空格检查是否能保存

  • 输入内容前后带空格的,能否自动过滤处理

  • 不输入内容,保存,是否有错误提醒

  • 输入注入的字符串,比如null,js代码,html代码等,是否能保存

  • 数字输入框还要检查边界值,负数,分数,非数字,0,科学计数法,字母与数字结合,16进制,8进制,货币性输入,小数点位数检查等情况等情况

另外,输入框在逻辑上需要关注以下几点:

  1. 信息的唯一性,比如一些名称的检查要求唯一性

  2. 编辑类的输入框,要检查鼠标移出后点击,能否从输入框移出焦点

  3. 有自动带入功能的输入框,要检查自动带入数据的正确性

二、按钮

按钮一般用户功能的确认,涉及到功能与db等的存储情况是否符合预期。常见测试场景如下:

  • 按钮是否可点,有弹出框的弹出框是否符合预期

  • 自然状态、鼠标悬浮和按钮按下状态下,按钮的状态

  • 按钮的功能实现是否正常(存储db,与其他模块交互等是否正常)

  • 按enter键操作按钮,功能是否正常

  • 按tab键,能否在不同的按钮或其他控件间切换

  • 一些按钮只能点击一次的情况,点击一次后,再操作,是否仍能点击

  • 错误信息提醒是在前端js判断,还是后台判断,点击按钮后,提示话术显示正确

  • 取消功能的按钮,是否能正常关闭页面,取消后回到的页面是否符合预期

三、下拉框

下拉框一般多个一起出现,实现筛选功能。需要注意筛选后是否立即生效,以及组合筛选的情况结果是否符合预期。常见测试点如下:

  • 默认显示是否正确,比如有的显示全部,有的默认选中某一项,有的显示“请选择”

  • 切换item,下拉框显示项内容和排序是否正确,不同浏览器,下拉框显示是否有变形等

  • 下拉框中选项超出设定值的,是否有滑动条,上下滑动,还是左右滑动等

  • 下拉框弹出时,鼠标点击控件外区域/选项/下拉框,下拉框能否收回

  • 当下拉框选项很多时,是否有被底层覆盖的情况

  • 下拉框数据被存储后,其他地方显示时,传递的数据正确性检查。比如下拉框选项按数字传递,而其他页面显示时应该显示对应的文字

  • 组合筛选的情况,有级联操作的,只有选择了前一个数据后,才能进行下一个的选择。比如省市之间,只有选择了省份,才能继续选择市,否则市不可选

  • 组合下拉框实现的筛选功能正确性检查

下拉框,列表,筛选框等经常一起组成筛选的功能。需要关注以下几点:

  1. 选择不同的选项,列表中展示筛选的结果,内容,默认排序等检查

  2. 组合条件时,列表中内容检查

四、时间框

  • 用于选择时间,有起始时间和结束时间,有的有选择时间的快捷键

  • 日期选择功能是否正确(包括年、月、日的选择是否正确)

  • 起、止时间选择(起始时间不能晚于结束时间)

  • 年、月、日的时间限制(比如:年-1900至今,月-1~12,日-平月、闰月)

  • 时间框展示在不同浏览器下,不同分辨率是否正确

  • 时间框快捷操作和左侧选择时间的对应关系检查,比如选择昨天,左侧的时间是否自动选择昨天的日期

  • 时间框选择时间后,确定,检查传递的值是否正确,尤其检查是否包含当天,比如最近一个月,是否包含今天等

  • 时间框和筛选框交互,选择时间框后,再选择其他的筛选框,时间框选择的内容应该保持不变

  • 截止时间不能早于开始时间

  • 时间框为公用控件时,要考虑当某一处修改时,其他地方是否会受到影响

五、文件类

分为文件上传和文件下载,分别如下:

文件上传,需要注意以下几点:

  • 文件类型正确、大小合适,是否能正确上传,交互是否正确

  • 文件类型正确,大小不合适,文件过大,检查处理速度,进度条情况是否符合预期

  • 上传空文件

  • 上传超大文件,检查是否能正确处理

  • 文件类型错误,提示话术是否正确

  • 上传一个正在使用中的文件

  • 文件名是否可以手工输入,手动输入存在/不存在的文件地址来上传,输入文件名称来上传

  • 连续多次选择不同的文件,查看是否上传最后一次选择的文件

  • Excel文件类型时,表格列数符合要求,表格列数多于期望的列数,少于期望的列数等条件检查。各列的类型符合预期,不符合预期,有空行,有重复字段等检查

文件下载,需要注意以下几点:

  • 右键是否可以正常下载文件

  • 使用工具下载文件,是否可正常下载,保存到本地是否正常显示

  • 对于本机没有安装工具的文件是否能正常打开,能否给出正确提示

  • 对于直接在页面内打开的内容是否能正常显示,页面美观性检查

  • 下载的次数是否会被记录

  • 后台设置了下载权限的文件,是否可以被正常下载

六、导航条

导航描述了用户在一个页面内操作的方式,在不同的用户接口控制之间,例如按钮、对话框、列表和窗口等;或在不同的连接页面之间。导航测试经常考虑如下几点。

  • 导航是否直观,简单明了,直接反应系统的主要功能。

  • 导航的风格与其他菜单,展示等风格是否一致

  • 导航的链接跳转是否正确

  • 导航条tab间的来回跳转,是否正确。

  • 导航条tab间的来回跳转,是否正确。

  • 链接如果带参数,跳转到不同页面,传递的参数是否正确

  • 导航条之外的公共内容,在导航条不同tab内的展示应该保持一致,且功能正确性检查。

  • 不同的导航条达到同样的目的,检查不同导航条跳转过来时内容是否一致。

  • 导航条各级之间有上下级关系时,进入下级页面,再返回,是否能正常返回上级页面。

Web页面测试总结(控件类)的更多相关文章

  1. Web 页面测试总结—控件类

    web端页面测试,最常见的是基本控件的测试,只有了解常见的控件和其测试方法,才能掌握测试要点,避免漏测情况发生.根据日常工作总结,将控件和常见逻辑集合在一起,总结了几个控件类测试查场景如下. 导航条 ...

  2. “此网页上的某个 Web 部件或 Web 表单控件无法显示或导入。找不到该类型,或该类型未注册为安全类型。”

    自从vs装了Resharper,看见提示总是手贱的想去改掉它.于是乎手一抖,把一个 可视web部件的命名空间给改了. 喏,从LibrarySharePoint.WebPart.LibraryAddEd ...

  3. WEB进度条控件

    近段时间为了工作的需要学习了一下写自定义控件,呵呵!以前没写过,近段时间才开始研究的,昨天写了一个WEB状态条控件,可以设置进度条的百分比,也可以设置它的总数与当前的数量来自动计算百分比,可以设置颜色 ...

  4. 【WEB自动化测试之控件定位】基于HTML5控件的唯一控件属性定位

      一.WEB控件定位是什么 要想弄懂这个问题,我们还是基于实践来学习.我们先来看一条入门级别自动化测试用例的构成. DemoCase:正确用户名和密码登录博客园,登录成功 URL: https:// ...

  5. [WinForm]WinForm跨线程UI操作常用控件类大全

    前言 在C#开发的WinForm窗体程序开发的时候,经常会使用多线程处理一些比较耗时之类的操作.不过会有一个问题:就是涉及到跨线程操作UI元素. 相信才开始接触的人一定会遇上这个问题. 为了解决这个问 ...

  6. Atitit..组件化事件化的编程模型--(2)---------Web datagridview 服务器端控件的实现原理and总结

    Atitit..组件化事件化的编程模型--(2)---------Web datagridview 服务器端控件的实现原理and总结 1. 服务端table控件的几个流程周期 1 1.1. 确认要显示 ...

  7. 关于CDC在非控件类中的使用

    在非CStatic的派生类中,由于进行图形的绘制的话,我们需要对该类传入一个CDC以便于绘画.这是因为非CStatic等控件类无法自己产生onPaint这类的消息,因此需要借传入的CDC进行回执,然后 ...

  8. Xamarin自定义布局系列——PivotPage,多页面切换控件

    PivotPage ---- 多页面切换控件 PivotPage是一个多页面切换控件,类似安卓中的ViewPager和UWP中的Pivot枢轴控件. 起初打算直接通过ScrollView+StackL ...

  9. js-关于iframe:从子页面给父页面的控件赋值方法

    项目中我们经会用到iframe,可能还会把iframe里的数值赋值给父页面空间. 接下来我们来说说有关于iframe赋值给父页面的方法. 1.子页面iframe给父页面的控件赋值方法. parent. ...

  10. findControl 可以获取前台页面的控件

    findControl 可以获取前台页面的控件

随机推荐

  1. _bzoj1007 [HNOI2008]水平可见直线【单调栈】

    传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1007 按斜率排序,去掉斜率相同时,截距较小的直线(即只保留该斜率下截距最大的直线).若当前直 ...

  2. LoadRunner12学习之路(6-8)

    六.创建负载测试场景 如何启动控制器? 要开始开发场景,请打开LoadRunner Controller. 打开HPE LoadRunner Controller. 在LoadRunner机器上,单击 ...

  3. AFNetworking2.5使用-转

    来自:http://blog.csdn.net/daiyelang/article/details/38434023 官网下载2.5版本:http://afnetworking.com/ 此文章是基于 ...

  4. 转-AFNetwork 作用和用法详解

    来自:http://www.maxiaoguo.com/clothes/269.html AFNetworking是一个轻量级的iOS网络通信类库.它建立在NSURLConnection和NSOper ...

  5. JDK集合框架--综述

       接下来的几篇博客总结一下对jdk中常用集合类知识,本篇博客先整体性地介绍一下集合及其主要的api: 从整体上来说,集合分两大类collection和map: 首先来看看Collection: c ...

  6. SpringBoot_自定义配置属性

    @ConfigurationProperties 在aplication.properties 中添加如下一段配置: mysql.jdbcName=com.mysql.jdbc.Driver mysq ...

  7. 微信小程序flex布局

    一.flex布局基础 二.相对定位和绝对定位   flex的容器和元素   主轴(左-右),交叉轴(上-下)     flex容器属性详解 flex-direction 决定元素的排列方向(默认row ...

  8. [BZOJ2330][SCOI2011]糖果 差分约束系统+最短路

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2330 类似于题目中这种含有不等式关系,我们可以建立差分约束系统来跑最长路或最短路. 对于一 ...

  9. 唤醒键盘时取消对特定类的position:fixed定位

    /* 唤起键盘时取消对特定类的position:fixed定位 */ var windheight = $(window).height(); /*未唤起键盘时当前窗口高度*/ $(window).r ...

  10. Node.js——body方式提交数据

    引入核心模块 http,利用其 api(http.createServer) 返回一个 http.server 实例,这个实例是继承于net.Server,net.Server 也是通过net.cre ...