负载压力测试-51Testing.ppt
文本预览下载声明
* * * * * * * * * * * Web应用服务器端设计的测试 功能设置容量规划 安全系统设计 数据库设计 * Web应用开发测试 代码测试 组件测试 服务器端设计的测试 * Web应用运行测试 功能测试 易用性测试 负载压力测试 客户端配置与兼容性测试 安全性测试 * Web应用安全性测试 部署与基础结构 输入验证 身份验证 授权 配置管理 敏感数据 回话管理 加密 参数操作 异常管理 审核与日值记录 * Web站点经验点滴 在执行客户端并发性能测试的过程中,需要同时监控数据库服务器、Web服务器以及网络资源等使用情况,以便对系统的性能做全面评估 录制脚本和手工编写脚本相结合 设置数据池,实现变量加载 业务批量执行 * Web站点经验点滴 模拟用户数的递增 合理设置交易之间时间间隔 模拟IP地址变量的技术 超时(timeout)的设置 并发用户连续执行交易数的设置 错误处理 * Web站点经验点滴 利用QALoad的ActiveData技术 采用复合交易测试方案 尽量将执行负载测试的机器合理分布 并发用户数量极限点 加压机器的CPU使用率也有必要监控 设置并发点 HTML与URL录制方式 * 脚本调试技术 Winsock并发性能测试 关键技术 : 在脚本中如何用变量来代替定值,即处理Winsock应用程序数据流。 看看下面的实例脚本 ! * 原始脚本 PLAYER_INFO *s_info; { /* Declare Variables */ SET_ABORT_FUNCTION(abort_function); DEFINE_TRANS_TYPE(wsk-AdvancedTech_1.c); // Checkpoints have been included by the convert process DefaultCheckpointsOn(); DO_WSK_Init(s_info); SetTimeout(20); /* Wait up to 20 seconds for each expected pattern */ SYNCHRONIZE(); BEGIN_TRANSACTION(); DO_WSK_Socket(S1, AF_INET, SOCK_STREAM, IPPROTO_IP); DO_WSK_Bind(S1, ANY_ADDR, ANY_PORT); DO_WSK_Connect(S1, 25, 2100, AF_INET); ///////////////////////////////////////////////////// // The session id returned by the server is // unique to each connection ///////////////////////////////////////////////////// * 21bytes: SessionID=jrt90847\r\n */ DO_WSK_Expect(S1, \n); ////////////////////////////////////////////////////// // This unique id is then used for subsequent // requests ////////////////////////////////////////////////////// /* 34 bytes */ DO_WSK_Send(S1, SessionID=jrt90847\r\n:^B^@^@^@^B^@^@^@^A^@^@^@); /* 15 bytes: ID Accepted#^@\r\n */ DO_WSK_Expect(S1, \n); DO_WSK_Closesocket(S1); END_TRANSACTION(); REPORT(SUCCESS); EXIT(); return(0); } * 修改后的脚本 PLAYER_INFO *s_info;{/* Declare Variables */char Buffer[64];char SendBuffer[64];int nBytesReceived = 0;SET_ABORT_FUNCTION(abort_function);DEFINE_TRANS_TYPE(wsk-AdvancedTech_1.c);// Checkpoints have been included by the convert processDefaultCheckpointsOn();DO_WSK_I
显示全部