我在VS2010 Ulimate的负载测试中遇到了单元测试问题。我想要做的是测试添加和删除(到/从DB)方法的性能。 AddCompany方法返回添加的公司,比我想把它放入一个集合(arraylist),然后在RemoveCompany中使用它。问题在于这个arraylist。它适用于单元测试,当它是静态的(我正在使用OrderedTest)但是当我在LoadTests中使用这个OrderedTest时会出现故障。这个arraylist应该是什么类型的字段以及它应该如何初始化?
[TestClass()]
public class ServiceProxyTest
{
private TestContext testContextInstance;
private static ArrayList temp = new ArrayList();
private ServiceProxy target;
[ClassInitialize]
public static void MyClassInitialize(TestContext testContext)
{
}
[TestInitialize]
public void MyTestInitialize()
{
this.target = new ServiceProxy();
}
[TestMethod]
[TestCategory("Unit")]
[DataSource("System.Data.SqlClient", "...", "...", DataAccessMethod.Sequential)]
public void AddCompanyTest()
{
Company companyDto = new Company
{
...
};
var company = this.target.AddCompany(companyDto);
temp.Add(company);
Assert.InNotNull(company);
Assert.AreEqual(companyDto.Name, company.Name);
}
[TestMethod]
[TestCategory("Unit")]
[DataSource("System.Data.SqlClient", "...", "...", DataAccessMethod.Sequential)]
public void RemoveCompanyTest()
{
try
{
if(temp.Count > 0)
{
var company = temp[temp.Count - 1] as Company;
this.target.RemoveCompany(company);
Assert.IsTrue(true);
}
else
{
Assert.Fail("No items to delete");
}
}
catch (FaultException)
{
Assert.Fail("FaultException thrown - something went wrong...");
}
}
}
任何?
答案 0 :(得分:1)
他们建议的方法是将ArrayList存储在TestContext中。您可以使用以下代码执行此操作: testContextInstance.Add(“myArrayList”,temp); 你可以使用它来检索它 ArrayList temp =(ArrayList)testContextInstance [“myArrayList”];