利用Apache ab以及GNUPlot来进行Web测试

简介: 最近写了几个测试脚本,希望要观察使用PUT方式上传文件和使用POST方式上传文件,两者效率的差别。 分别是:      put_client.php          模拟客户端发送PUT请求      put_server.

最近写了几个测试脚本,希望要观察使用PUT方式上传文件和使用POST方式上传文件,两者效率的差别。

分别是:

     put_client.php          模拟客户端发送PUT请求

     put_server.php          接收客户端的PUT请求,并保存文件

     post_client.php          模拟客户端发送的POST请求

     post_server.php          接收客户端的POST请求,并保存文件

      /Files/cocowool/code.zip

然后利用ab(ab是apache自带的一个性能测试工具)对客户端文件发起请求,来测试处理所消耗的时间。具体的测试场景设计了以下四组

1、使用PUT请求,改变并发的请求数。其中请求数设置为1000,并发数分别设置为2、5、10、30、50

2、使用POST请求,改变并发的请求数。其中请求数设置为1000,并发数分别设置为2、5、10、30、50

3、使用PUT请求,改变发送的文件大小。其中请求数设置为1000,并发数设置为30,文件大小分别为100、150、200

4、使用POST请求,改变发送文件大小。其中请求数设置为1000,并发数设置为30,文件大小分别为100、150、200。


每次实验前,关闭系统的其他程序,清空数据文件夹内的数据,重新启动Lamp。

实验环境:Mac MC700、Apache2.2.6、PHP5.3.1


实验的结果:

测试结果:

1、不同并发状况下PUT的处理情况测试

 

结论:并发越大处理时间越长,个别请求因为负载问题造成处理时间超长。


2、不同并发状况下POST的处理情况测试

 

结论:并发越大处理时间越长.


3、PUT方式和POST方式对比。

 


结论:PUT方式优于POST方式,在并发较少情况下,这种差别不太明显,但是随着并发数的加大,差别开始显现。


4、根据上述结果,选定c=30时,测试不同文件尺寸下两中方式的差异。以下是100k、150k、200k文件大小时的结果图。

以上结果只是在本地环境测试,相信如果是服务器环境,PUT和POST方式的差异会更明显。


 

参考资料:

1、ab性能测试与Gnuplot绘制

2、httpperf+AutoBench+Gnuplot构建Web Server压力测试系统

相关文章
|
3天前
|
安全 Linux API
Burp Suite Professional 2025.4 发布 - Web 应用安全、测试和扫描
Burp Suite Professional 2025.4 (macOS, Linux, Windows) - Web 应用安全、测试和扫描
34 6
Burp Suite Professional 2025.4 发布 - Web 应用安全、测试和扫描
|
5天前
|
人工智能 自然语言处理 JavaScript
测试工程师要失业?Magnitude:开源AI Agent驱动的端到端测试框架,让Web测试更智能,自动完善测试用例!
Magnitude是一个基于视觉AI代理的开源端到端测试框架,通过自然语言构建测试用例,结合推理代理和视觉代理实现智能化的Web应用测试,支持本地运行和CI/CD集成。
89 15
测试工程师要失业?Magnitude:开源AI Agent驱动的端到端测试框架,让Web测试更智能,自动完善测试用例!
|
1月前
|
自然语言处理 安全 测试技术
HCL AppScan Standard 10.8.0 (Windows) - Web 应用程序安全测试
HCL AppScan Standard 10.8.0 (Windows) - Web 应用程序安全测试
77 0
HCL AppScan Standard 10.8.0 (Windows) - Web 应用程序安全测试
|
2月前
|
人工智能 Linux iOS开发
Burp Suite Professional 2025.2 (macOS, Linux, Windows) - Web 应用安全、测试和扫描
Burp Suite Professional 2025.2 (macOS, Linux, Windows) - Web 应用安全、测试和扫描
103 12
Burp Suite Professional 2025.2 (macOS, Linux, Windows) - Web 应用安全、测试和扫描
|
2月前
|
安全 JavaScript Java
AppSpider Pro 7.5.015 for Windows - Web 应用程序安全测试
AppSpider Pro 7.5.015 for Windows - Web 应用程序安全测试
44 12
AppSpider Pro 7.5.015 for Windows - Web 应用程序安全测试
|
4月前
|
Web App开发 IDE JavaScript
Selenium IDE:Web自动化测试的得力助手
Selenium IDE:Web自动化测试的利器。作为开源工具,Selenium IDE支持录制与回放用户操作,适用于Chrome、Firefox等多浏览器,简化了测试流程,提升了效率,降低了自动化测试的门槛。它还支持导出多种编程语言的脚本,便于测试集成与复用。
183 31
Selenium IDE:Web自动化测试的得力助手
|
4月前
|
Web App开发 IDE JavaScript
Selenium IDE:Web自动化测试的得力助手
Selenium IDE是开源的Web自动化测试工具,适用于Chrome、Firefox等多款浏览器。它提供简单的录制与回放功能,用户可通过录制浏览器操作自动生成测试脚本,支持导出为多种编程语言,便于非专业测试人员快速上手,有效提升测试效率与质量。
549 6
Selenium IDE:Web自动化测试的得力助手
|
4月前
|
Web App开发 IDE 测试技术
Selenium:强大的 Web 自动化测试工具
Selenium 是一款强大的 Web 自动化测试工具,包括 Selenium IDE、WebDriver 和 Grid 三大组件,支持多种编程语言和跨平台操作。它能有效提高测试效率,解决跨浏览器兼容性问题,进行性能测试和数据驱动测试,尽管存在学习曲线较陡、不稳定等缺点,但其优势明显,是自动化测试领域的首选工具。
358 17
Selenium:强大的 Web 自动化测试工具
|
5月前
|
监控 安全 测试技术
如何在实际项目中应用Python Web开发的安全测试知识?
如何在实际项目中应用Python Web开发的安全测试知识?
134 61
|
5月前
|
安全 关系型数据库 测试技术
学习Python Web开发的安全测试需要具备哪些知识?
学习Python Web开发的安全测试需要具备哪些知识?
141 61

热门文章

最新文章

推荐镜像

更多