最近看到这篇文档:
Critical Success Factors for Load Test Projects
http://www.portata.com/successfactors.htm
介绍了负载测试项目成功的5个关键的因素,摘记如下:
Planning(计划)
As with any project, the planning stage is the most critical to the project's success. For load testing projects, the planning stage is even more critical. Load testing involves more parts of an organization than any other activity in application development.
参考 SEI负载测试计划过程:
http://www.portata.com/seiplanningprocess.htm
Staff Skills(测试人员掌握的技术)
Load testers need a variety of skills including many skills that functional testers usually do not have.
Experience(经验). Load testers need in-depth knowledge about load testing and how to use the load test tools. The load test team should have at least one member who has run several successful load test projects.
Test Tool Certifications(测试工具认证). Some tool vendors have load test tool certifications. Though the certifications are not a substitute for experience, they indicate that the load testers at least understand how the tools work.
Application(熟悉被测试的应用程序). Load testing does not require as much knowledge of the application as functional testing does. In functional testing the testers cover every function, but in load testing the testers will execute just a few common paths through the application. However, the load testers should have some operational knowledge of the application to be tested or at least have access to a knowledgeable application user.
Application Usage(熟悉应用程序的使用). The intent of load testing is to emulate what real users will be doing with the application when it is deployed. Therefore, the load testers must also have access to someone who knows how the application is actually used in production or can at least make an informed estimate. That person will supply information about how users typically accomplish a particular task, how often tasks are performed, and how many users perform the tasks.
Systems(系统方面的知识). Load testers must have a good working knowledge of the software and hardware components of the application. These components may include web servers, application servers, database servers, operating systems, networks and network elements such as load balancers. The load testers need not have "guru" level knowledge of each of the components but should have operational knowledge and an understanding of the performance issues associated with the components. For example, a load tester should know what multi-way joins, indexes and spin counts are and what affect they have on a database server.
Protocols(通信协议方面的知识). Load tests are usually driven at the protocol level instead of the GUI level. This allows load generation machines to emulate many users. Load testers should understand the protocol(s) used at the point where the load test tool interfaces with the application to be tested. For web applications this is typically between the web browser and the web server. For load testing web applications a load tester should know both HTTP and HTML. Other commonly used protocols are SQL*Net, ODBC, and DCOM.
Communication(沟通能力). Load testers will work with many parts of an organization to coordinate activities, schedules and resources. Load testing is not a heads down coding exercise. Daily interaction with a variety of people requires good oral and written communication skills as well as good people skills.
If the load testers do not have sufficient communication and people skills, the project will require more management time to handle the planning, coordination and communication.
Support Staff(支持人员)
The load testers must have access to DBAs, application server administrators, network administrators, and system administrators. They are used on an as-needed basis to set up the test environment, provide access to the components, solve problems, and monitor the load test runs.
Load Test Lab(负载测试实验室)
Test Servers(测试服务器). Management usually will not allow load tests to be performed on productions systems since the high load levels would interfere with production activities. Also, production activities may skew the load test results.
Unlike a lab for functional testing, a load test lab must be configured the same as the production environment in terms of component capacity and speed, otherwise the load test may not be accurate or even meaningful. For example, if a production machine has four CPUs then the test lab should be configured with a four CPU test machine.
Often it is cost prohibitive to duplicate the full production system in the test lab. Some possible workarounds are to use the production equipment in the test lab prior to deployment or to use the production infrastructure during off-business hours. Equipment can be rented or leased but there is typically a long leadtime for acquisition and set up so plan accordingly.
Databases(数据库、测试数据). The database(s) in the test lab must be preloaded with either a copy of production data or dummy data that is similar in size and content to the production data. Databases that are too small will tend to give erroneously fast results and can obscure table scan and index problems.
Load Test Tools(负载测试工具的选择). Load test tools range from the low-end URL pingers to commercial-grade multi-protocol load generation and monitoring systems. Most applications that are worth load testing include business critical functions and dynamic data, which require the higher end tools.
The important features to have in a load test tool are:
- Ability to parameterize data.
- Ability to capture dynamic data and use on subsequent requests.
- Application infrastructure monitoring.
- Support for the application's protocols.
The load test tools are not inexpensive, so allocate sufficient budget during the budget planning process.
Load Test Monitoring(负载测试监控)
Response time measurements indicate whether you have a problem and how bad it is, but they do not tell you why you have a problem, what the root cause is, or how to get rid of it. For that information you need to monitor the individual components in the application architecture. The components may include a web server, application server, database server, network and network elements such as firewalls, operating systems and server hardware.
The better load test tools have built-in monitors which measure the various components in real-time and report results verses the load levels applied at the time. If the load test tool that you will be using has the capability to monitor, the tool may require that monitoring agents be installed on the components and/or authorizations be granted to access the components in real time. If the tool does not have this capability, you must make provisions for staff to manually monitor the key components and integrate the results.
分享到:
相关推荐
本次测试采取负载测试、并发测试、可靠性测试。测试方案采取模拟真实用户使用场景,模拟指定人数在一定时间点击界面产生的请求数。 在并发10(单位个/s)、20、40、80、160、500、1000、2000的基准下,调整用户数...
这个工具运行后会让CPU处于100%的运行状态,主要用于通过负载测试系统的故障问题。有需要的可以下载使用。
VSTEST Web性能测试与负载测试 详细性能测试介绍
性能测试定义 性能测试概念 负载测试 压力测试 性能测试工作原理及应用角度,模型。测试管理流程,测试人员安排,测试工作产品,性能测试的过程,周期,系统需求应用配置需求用户手册需求,测试计划,加案例说明。 ...
图解说明如何使用VS2008做负载测试并分析结果
loadrunner负载测试实例,步骤清晰
利用vs2010+sql server进行软件性能与负载测试
讲解了LoadRunner负载测试下的一些概念和性能分析
简单的网站负载测试工具,主要和http协议的get、post有关
Loadrunner负载测试 浏览器缓存设置
负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障负载压力测试及故障...
库卡机器人负载测试
FBender - 用于通用网络协议的负载测试命令行工具
1.2. 建立验证测试项目团队 1 1.3. 确认最终测试方案 2 1.4. 假负载验证测试工具 2 2. 假负载验证测试 4 2.1. 空载测试 4 2.2. 半载测试 4 2.3. 满载测试 4 2.4. BA群控系统测试 6 2.5. 故障测试及监控测试...
SilkPerformer负载测试步骤 SilkPerformer负载测试步骤 SilkPerformer负载测试步骤
使用LodRunner实现大负载测试的四部曲.pdf
can负载率测试结果与负载率计算方法,在stm32在通过can分析仪实际测试得出的经验与心得体会,欢迎研究can通信的朋友学习
基于GO语言开发的高性能负载测试工具