我在Visual Studio中使用Selenium和NUnit对我的测试用例进行排序。
我无法访问两个字符串变量,因为它们属于两个不同的测试用例。
我的代码外观的简化版本
namespace AutomatedTestCases
{
[TestFixture]
public class TestClass : BaseTest
{
private String A;
private String B;
[Test]
public void TestCase1()
{
String A = "ABC123";
Console.WriteLine(A);
}
[Test]
public void TestCase2()
{
String B = "ABC123";
Console.WriteLine(B);
}
[Test]
public void TestCase3()
{
Console.WriteLine(A);
Console.WriteLine(B);
}
[Test]
public void OrderOfTestCases()
{
TestCase1();
TestCase2();
TestCase3();
}
}
}
当我从测试用例中打印文本时,打印了ABC123。但是当我按顺序(OrderOfTestCases(((运行它们时,它不打印任何内容或空值。
因此,值"ABC123"似乎没有存储在测试用例之间的变量中。
A
和B
变量只能在声明它们的方法中访问。如果要在最初声明它们的方法之外访问A
或B
,则必须在类范围内移动声明。
[TestFixture]
public class TestClass : BaseTest
{
private string A = "ABC123";
private string B = "ABC123";
}
这意味着您可以在任何来自类TestClass
测试方法中访问A
或B
变量。
如果您只想定义变量并在测试中分配其值,则只需使用:
private string A;
private string B;
在您的[Test]
方法中:
[Test]
public void TestCase1()
{
A = "ABC123";
}