在软件开发中,经常会遇到这样的情况,单元测试时确认每个模块都能单独工作,但这些模块集成在一起之后会出现有些模块不能正常工作。例如,在chrome环境下用js写了一个实时捕捉video中特定区域的模块,正常工作;利用worker线程进行webgl场景渲染,也正常;可是当两个运算合并时,出现一个模块不能正常运行,原因在于两个模块不适合在worker线程中结合,基于worker本身的局限性,只能有一个模块正常工作。所以,很有必要进行集成测试。
(1)集成测试定义:
集成测试是将软件集成起来,对模块之间的接口进行测试。
(2)集成种类:
选取网站首页和其他几个有代表性的页面进行测试。
http://www.sc.sdu.edu.cn/default.do
http://www.sc.sdu.edu.cn/getMoreNews.do?newsType=84
http://www.sc.sdu.edu.cn/getNewsDetail.do?newsId=7581
这里只截取这三个界面的测试结果
网页统计
结果分析
通过测试,我们发现网站首页的访问速度比其他页面慢很多。访问时间大概在其他网页的4~6倍。整体上,性能可以满足学院师生的访问。
结果
问题及解决方案
1)在 HTTP 标头中为静态资源设置过期日期或最长存在时间,可指示浏览器从本地磁盘中加载以前下载的资源,而不是通过网络加载。
利用浏览器缓存存储可缓存的资源。
2)清除首屏内容中阻止呈现的 JavaScript 和 CSS。
网页中有1个阻止呈现的脚本资源和2个阻止呈现的 CSS 资源。这会导致呈现网页的过程出现延迟。
3)启用压缩。
使用 gzip 或 deflate 压缩资源可以减少通过网络发送的字节数。
压缩 JavaScript 代码可以节省大量数据字节空间,并提高下载、解析和执行的速度。
适当地设置图片的格式并进行压缩可以节省大量的数据字节空间。
压缩 HTML 代码(包括其中所含的任何内嵌 JavaScript 和 CSS)可以节省大量数据字节空间,并提高下载和解析的速度。
压缩 CSS 代码可以节省大量数据字节空间,并提高下载和解析的速度。
结果
This is ApacheBench, Version 2.0.41-dev <$Revision: 1.121.2.12 $> apache-2.0
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 2006 The Apache Software Foundation, http://www.apache.org/
Server Software: |
***************** |
||
Server Hostname: |
www.sc.sdu.edu.cn |
||
Server Port: |
80 |
||
Document Path: |
/default.do |
||
Document Length: |
21541 bytes |
||
Concurrency Level: |
40 |
||
Time taken for tests: |
0.273954 seconds |
||
Complete requests: |
1000 |
||
Failed requests: |
0 |
||
Total transferred: |
21757000 bytes |
||
HTML transferred: |
21541000 bytes |
||
Requests per second: |
3.65 |
||
Transfer rate: |
79.42 kb/s received |
||
Connnection Times (ms) |
|||
|
min |
avg |
max |
Connect: |
0 |
3 |
47 |
Processing: |
4521 |
10830 |
16780 |
Total: |
4521 |
10833 |
16827 |
This is ApacheBench, Version 2.0.41-dev <$Revision: 1.121.2.12 $> apache-2.0
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 2006 The Apache Software Foundation, http://www.apache.org/
Server Software: |
***************** |
||
Server Hostname: |
www.sc.sdu.edu.cn |
||
Server Port: |
80 |
||
Document Path: |
/getNewsDetail.do?newsId=7525 |
||
Document Length: |
7134 bytes |
||
Concurrency Level: |
40 |
||
Time taken for tests: |
0.5438 seconds |
||
Complete requests: |
1000 |
||
Failed requests: |
0 |
||
Total transferred: |
7372000 bytes |
||
HTML transferred: |
7134000 bytes |
||
Requests per second: |
183.89 |
||
Transfer rate: |
1355.65 kb/s received |
||
Connnection Times (ms) |
|||
|
min |
avg |
max |
Connect: |
1 |
1 |
23 |
Processing: |
14 |
212 |
281 |
Total: |
15 |
213 |
304 |
参数解释
Document Path #测试的页面
Document Length #页面大小
Concurrency Level #测试的并发数
Time taken fortests #整个测试持续的时间
Complete requests #完成的请求数量
Failed requests #失败的请求数量
Write errors: 0
Total transferred #整个过程中的网络传输量
HTML transferred #整个过程中的HTML内容传输量
Requests persecond #相当于LR中的每秒事务数,后面括号中的mean表示这是一个平均值
Time per request #相当于LR中的平均事务响应时间,后面括号中的mean表示这是一个平均值
Time per request #每个连接请求实际运行时间的平均值
Transfer rate #平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题
测试结果
网站首页的访问速度比其他页面慢很多。整体上,性能可以满足学院师生的访问。
看来网站在设计或制作时存在漏洞,进一步我们得到:
安全漏洞集中在“核心数据被非法更改”和“服务器配置信息泄露”上,应该是在设计数据库和网页时没有做好权限管理。
软件测试基本方法(六)之集成测试和系统测试,布布扣,bubuko.com
原文地址:http://blog.csdn.net/bluecloudmatrix/article/details/31821203