### LoadRunner错误集锦
#### 一、Stepdownloadtimeout(120 seconds)
**问题描述:**
当使用LoadRunner进行性能测试时,可能会遇到“Stepdownloadtimeout(120 seconds)”这一常见错误。该错误表明在尝试下载某个步骤的数据时超过了预设的120秒超时时间。
**解决方案:**
1. **修改运行时设置中的超时时间:**
- 打开LoadRunner中的“运行时设置”(Run-time Settings),定位至“HTTP”选项卡。
- 修改以下三个参数的时间阈值至更高的数值,建议设置为600秒:
- HTTP-requestconnecttimeout
- HTTP-requestreceivetimeout
- Stepdownloadtimeout
- 完成修改后,确保同样在“控制组件”(Controller Component)的“运行时设置”选项中更新这些参数。
2. **启用wininet重播模式:**
- 如果上述方法仍然无法解决问题,可以尝试启用wininet重播模式。
- 在“运行时设置”的“Internet Protocol”选项卡中,进入“Preferences”子选项。
- 在“Advanced”区域勾选“wininet replay instead of sockets”选项。
- 需要注意的是,此方法仅适用于Windows系统。
#### 二、Connection reset by peer
**问题描述:**
“Connection reset by peer”通常出现在网络连接被远程主机意外中断或重置的情况下。这可能是因为下载速度过慢导致超时。
**解决方案:**
1. **调整连接超时时间:**
- 在LoadRunner的“运行时设置”窗口中,转至“Internet Protocol”选项卡下的“Preferences”。
- 在“Set Advanced Options”(设置高级选项)部分,适当增加“HTTP-requestconnecttimeout(sec)”的数值。
#### 三、Connection refused
**问题描述:**
“Connection refused”错误意味着LoadRunner试图建立与目标服务器的连接时被拒绝。这可能是由多种原因引起的,包括但不限于连接数限制、服务器配置问题等。
**解决方案:**
1. **监控weblogic连接情况并调整参数:**
- 检查weblogic服务是否存在过多的连接被拒绝的情况,并增加`acceptBacklog`。
- 增加连接池数量和调整执行线程数,确保(连接池数 * StatementCacheSize)的值不超过Oracle数据库的最大连接数。
2. **调整操作系统连接数限制:**
- 在AIX系统中,可以编辑`limits`文件来增加文件描述符的数量。
- 在Windows系统中,可以通过修改注册表中的`TcpTimedWaitDelay`和`MaxUserPort`值来调整TCP连接的超时时间和可用端口号。
#### 四、Open many files
**问题描述:**
在高负载情况下,“Open many files”问题通常由于服务器或中间件对打开文件数量有限制而引起。
**解决方案:**
1. **调整操作系统文件数限制:**
- 在AIX系统中,编辑`limits`文件,增加`nofiles`的限制条件。
- 对所有相关的服务器进行同样的设置。
2. **修改weblogic配置文件:**
- 如果第一种方法无效,可以在weblogic的`commonEnv.sh`文件中增加文件描述符的最大数量。
- 注意备份原始文件以防修改出错。
3. **Linux系统调整:**
- 使用`ulimit -HSn4096`命令调整文件描述符的最大数量。
- 使用`ulimit -a`命令来查看当前的文件描述符限制。
#### 五、Has shutdown the connection prematurely
**问题描述:**
“Has shutdown the connection prematurely”错误表示在访问应用服务器过程中提前关闭了连接,无论是小用户量还是大用户量均可能发生。
**解决方案:**
1. **排查应用服务问题:**
- 如果在小用户量下出现此错误,很可能是因为应用程序自身存在问题。
- 如果在大用户量下出现此错误,可能是应用服务器参数设置不当。
2. **检查Weblogic服务器配置:**
- 检查Weblogic服务器的“Server”元素配置,特别是`AcceptBacklog`、`ListenQueueDepth`等参数。
- 确保这些参数设置合理,以避免连接被拒绝的情况发生。
通过上述方法,可以有效地解决LoadRunner在性能测试过程中遇到的各种常见错误,帮助提高测试效率和准确性。