来了这么久,还没有发表文章,很惭愧。今天研究了一下LoadRunner以及VS2005的Test Project中的LoadTest,发现LoadRunner功能太强大了,我先抛砖引玉,欢迎指教。
1、 安装步骤
先安装Mercury LoadRunner(必须),我装的是8.0;
再安装LoadRunner for Visual Studio 2003,文件名是LRDotNetAddInSetup.exe
安装结束后Vs2003就多了一个Vuser菜单。
2、 新建LoadRunner c#.Net 工程
3、 写入代码
using System;
using System.Runtime.InteropServices;
namespace LoadRunnerUser1 {
/// <summary>
/// Summary description for VuserClass.
/// </summary>
[ClassInterface(ClassInterfaceType.AutoDual)]
public class VuserClass {
LoadRunner.LrApi lr;
public VuserClass() {
// LoadRunner Standard API Interface :: DO NOT REMOVE!!!
lr = new LoadRunner.LrApi();
}
// 初始化,同 [TestInitialize()]
public int Initialize() {
// TO DO: Add virtual user's initialization routines
return lr.PASS;
}
// 主测试代码段,同[TestMethod]
public int Actions() {
ClassTest tt = new ClassTest ();//This is My Test Class
return lr.PASS;
}
// 结束, 同 [TestCleanup()]
public int Terminate() {
// TO DO: Add virtual user's termination routines
return lr.PASS;
}
}
}
using System.Runtime.InteropServices;
namespace LoadRunnerUser1 {
/// <summary>
/// Summary description for VuserClass.
/// </summary>
[ClassInterface(ClassInterfaceType.AutoDual)]
public class VuserClass {
LoadRunner.LrApi lr;
public VuserClass() {
// LoadRunner Standard API Interface :: DO NOT REMOVE!!!
lr = new LoadRunner.LrApi();
}
// 初始化,同 [TestInitialize()]
public int Initialize() {
// TO DO: Add virtual user's initialization routines
return lr.PASS;
}
// 主测试代码段,同[TestMethod]
public int Actions() {
ClassTest tt = new ClassTest ();//This is My Test Class
return lr.PASS;
}
// 结束, 同 [TestCleanup()]
public int Terminate() {
// TO DO: Add virtual user's termination routines
return lr.PASS;
}
}
}
4、 配置并运行测试
点击Vuser->Create Load Scenario
我们选择Manual Scenario,启动了LoadRunner
Start Scenario,看最后结果出来了
我们的一个测试Method在这里被称为Transaction,由于有Initialize、Actions和Terminate三段,所以每测试Unit有三个Transaction。特别的是结果参数分别提供了Method Transaction和EveryOne /All Transaction的性能。
很简单吧,试试吧。