从测试的角度看,Web应用软件的以下特点会导致Web应用软件的测试有别于其他软件的测试

1.基于无连接协议

2.内容驱动

3.开发周期短

4.演化频繁

5.安全性要求较高

6.美观性要求较高

Web应用软件的常用开发技术

1.CGI程序与服务器编程

CGI程序本身来讲就是一个普通的程序,但是它更够生成一个符合html标准格式的字符串

服务器端编程语言针对html中只变的部分进行编程处理,将编程嵌入到html中,主要包括asp,php,jsp等

在测试Web应用软件时,遇到由程序生成的页面,不能将其当做普通的页面,而是要根据程序的特点选取适当的测试用例集进行测试

2.脚本语言和客户端编程

典型的代表有:JavaScript和VBScript

测试时需要对客户端的程序也进行测试,同时针对异步交互的每一个模块都要进行测试

应用服务器就是能够将网络应用的共性成分从具体的应用中剥离出来,从而简化应用系统的开发和运行

常见的应用服务器可以分为三层,即变现成,业务无逻辑层和数据访问层

基于三层架构,很多企业又发展出适合自己的多层架构系统

应用服务器可分为通用的和专用的应用服务器

通用的是指可以在多个领域提供多方面的服务

专用的是指在某个特定的领域中提供特定的服务

Web应用软件的测试策略

由于Web应用软件通常采用多层的结构,所以在测试的时候最好也采用分层的策略

1.表现层的重点是html文档的结构和客户端的程序

其中包括

排版结构,链接结构,客户端程序,浏览器兼容性的测试

2.业务层的测试主要关注其包含的业务逻辑

可以分为:对单个程序和对一组程序的测试

3.数据层主要包括对数据完整性的测试以及大数据量下对数据库操作的性能

层与层之间的集成测试:

由于单独对每一层进行测试并不充分,所以测试时还需要考虑层间的集成问题

Web应用软件测试的实施

1.功能测试

该测试页可以看做是对整个Web应用软件进行的集成测试

(1)链接测试:对整个Web应用软件中的链接进行测试

(2)表单测试

(3)Cookie测试

2.性能测试

Web应用软件性能测试的主要并需要围绕的指标是并发的用户数

(1)并发测试

(2)负载和压力测试

(3)配置测试和性能调优

3.易用性测试

该测试和表示层测试中的排版测试时类似的

4.内容测试

由于Web应用软件通常是内容驱动的,Web应用软件的成功与内容的正确性,准确性,合法性和相关性密不可分

(1)测试数据库中的内容

(2)测试服务器端程序和客户端程序是否会在数据的处理过程中引入错误的内容

5.安全性测试

(1)服务器端的内容安全性

在测试时需要检查用户能够绕过Web应用软件设置的访问控制机制直接访问相关的内容

(2)客户端的内容安全性

一方面为用户可以通过查看源代码来获得某些表单隐藏的数据,另一方面用户的一些私人的数据可能会被记录在浏览器的缓冲区中,而被其他用户获取

(3)Cookie安全性

(4)日志功能

6.接口测试

复杂的Web应用软件不仅仅是一个Web站点,它需要和其他系统协作完成所需要的功能,而不仅仅是在页面间进行链接(如WebService接口的使用)

软件测试技术---Web应用软件测试的更多相关文章

  1. 软件测试技术lab2——Selenium上机实验

    Selenium上机实验说明 1.安装SeleniumIDE插件 2.学会使用SeleniumIDE录制脚本和导出脚本 3.访问http://121.193.130.195:8080/使用学号登录系统 ...

  2. 信息安全-技术-Web:cookie

    ylbtech-信息安全-技术-Web:cookie Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份.进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密 ...

  3. 软件测试技术之可用性测试之WhatsApp Web

    Tag:可行性测试.测试流程.结果分析.案例分析 WhatsApp是一款面向智能手机的网络通讯服务,它可以通过网络传送短信.图片.音频和视频.WhatsApp在全球范围内被广泛使用,是最受欢迎的即时聊 ...

  4. 软件测试技术(三)——使用因果图法进行的UI测试

    目标程序 较上次增加两个相同的输入框 使用方法介绍 因果图法 在Introduction to Software Testing by Paul一书中,将软件测试的覆盖标准划分为四类,logical ...

  5. 高级软件测试技术-任务进度-Day02

    任务进度11-14 使用工具 Jira 小组成员 华同学.郭同学.穆同学.沈同学.覃同学.刘同学 任务进度 在经过了昨天的基本任务分配之后,今天大家就开始了各自的内容,以下是大家任务的进度情况汇总. ...

  6. 软件测试技术(五)——Software Review

    本周的测试课上进行了一次同行评审的演练,大家讨论的很热烈,不过我也发现了一些不太理解的过程,如如何进行计划活动,走读.技术评审.正规检视是基于什么目的,并应该在何时进行.我做了一下详细的研究. 首先, ...

  7. 《高级软件测试》web测试实践--12月31日记录

    今日的任务进度如上图所示.我们对华科软件学院和计算机学院的网站进行了对比分析,分析的角度包括基本功能分析.前端性能分析.用户调研等.在这里我们简单总结下我们得到的评测结果. 基本功能分析:计算机学院和 ...

  8. 《高级软件测试》web测试实践--12月30日记录

    考完数学,我们正式开始web测试实践的作业,今天,我们主要进行了方案的选择和人员的分工.任务计划和安排如上图所示. 任务进展:完成题目选择和人员分工: 遇到问题:暂无: 下一步任务:完成软件评测.用户 ...

  9. 软件测试技术(六)——白盒测试之控制流覆盖准则+Visual Studio 2013单元测试

    一.目标程序 单片机发送的A/D转换结果的整体格式为:[DLE][STX]Message[CHKSUM][DLE][ETX],其中[]括号中的字符为16进制的助记符,并非ASCII码.其中:[DLE] ...

随机推荐

  1. Tomcat学习笔记(十)

    StandardWrapper容器 Context容器包含一个或者多个Wrapper实例,每个Wrapper实例表示一个具体的servlet定义. 方法调用序列 具体过程 (1)连接器创建reques ...

  2. 如何在Windows2008中禁用IPv6

    我自己修复此问题 更改 DisabledComponents 注册表值 您可以通过将DisabledComponents注册表值的主机上禁用 IPv6.DisabledComponents注册表值会影 ...

  3. mysql 导入

    1.默认情况下:MySQL导入文件大小有限制的,最大为2M,所以当文件很大时候,直接无法导入,可修改php.ini参数调整: 在php.ini中修改相关参数: 影响MySQL导入文件大小的参数有三个: ...

  4. 2018超详细sublime text3+python3.x安装配置教程(附常用插件安装教程)

    导读 本文是关于2018年7月最新版sublime text3+pythin3.x下载及安装配置教程,sublime text3版本为3176,python版本为3.7,安装环境是基于windows1 ...

  5. Data_Structure01-绪论作业!

    一.作业题目 仿照三元组或复数的抽象数据类型写出有理数抽象数据类型的描述 (有理数是其分子.分母均为整数且分母不为零的分数). 有理数基本运算: 构造有理数T,元素e1,e2分别被赋以分子.分母值 销 ...

  6. Altium Designer 总线式布线

    1.常规布线:不详细说了,是个人就知道怎么弄.需要说明的是在布线过程中,可按小键盘的*键或大键盘的数字2键添加一个过孔:按L键可以切换布线层:按数字3可设定最小线宽.典型线宽.最大线宽的值进行切换. ...

  7. 双缓冲(Double Buffer)原理和使用【转】

    转自:http://blog.csdn.net/acs713/article/details/16359551 原文出自:http://blog.csdn.net/xiaohui_hubei/arti ...

  8. UVA 10940 Throwing cards away II

    题意略: 先暴力打表发现规律 N=1 ans=1N=2 ans=2N=3 ans=2N=4 ans=4N=5 ans=2N=6 ans=4N=7 ans=6N=8 ans=8N=9 ans=2N=10 ...

  9. mybatis之<trim prefix="" suffix="" suffixOverrides="" prefixOverrides=""></trim>的含义

    转自:http://blog.csdn.net/qq_33054511/article/details/70490046   <trim prefix="" suffix=& ...

  10. (12)C#枚举,结构

    枚举 枚举类型是类似自定义的一个类,类里放着你自己定义的常量,关键字enum. enum Season{spring,summer,fall,winter} 想用这里的常量的话,首先把变量定义成 Se ...