Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在mstest中的[TestInitialize]方法中动态创建URL,c#?_C#_Mstest_Winappdriver - Fatal编程技术网

如何在mstest中的[TestInitialize]方法中动态创建URL,c#?

如何在mstest中的[TestInitialize]方法中动态创建URL,c#?,c#,mstest,winappdriver,C#,Mstest,Winappdriver,我的代码是(我将实际URL替换为../../../) 因为我想在不同的项目中使用这种方法。是否可以编写变量url而不是../../../,并从其他文件或测试用例中获取url值。因此,您可以使用initialize(string capUrl)方法创建基类,并在派生类中调用它,如下所示: [TestInitialize] public static void Initalize() { base.Initalize("http://SomeUri.com")

我的代码是(我将实际URL替换为../../../)


因为我想在不同的项目中使用这种方法。是否可以编写变量url而不是../../../,并从其他文件或测试用例中获取url值。

因此,您可以使用
initialize(string capUrl)
方法创建基类,并在派生类中调用它,如下所示:

    [TestInitialize]
    public static void Initalize()
    {
        base.Initalize("http://SomeUri.com")
    }
如果您需要在Testcase中指定它。然后您需要删除
[TestInitialize]
,最好将其重命名为类似“PrepareTest”的名称。并在测试方法中手动调用。像这样:

[Testcase("http://SomeUri.com")]
public void TestMethod(string uri)
{
    this.PrepareTest(uri);
}

这个解决方案对你有帮助吗?或者您需要其他东西?

因此,您可以使用
initialize(string capUrl)
方法创建基类,并在派生类中调用它,如下所示:

    [TestInitialize]
    public static void Initalize()
    {
        base.Initalize("http://SomeUri.com")
    }
如果您需要在Testcase中指定它。然后您需要删除
[TestInitialize]
,最好将其重命名为类似“PrepareTest”的名称。并在测试方法中手动调用。像这样:

[Testcase("http://SomeUri.com")]
public void TestMethod(string uri)
{
    this.PrepareTest(uri);
}

这个解决方案对你有帮助吗?或者您需要其他东西?

所以我们不能在[Testentialize]方法中直接传递URL变量。??不。TestInitialize应该设置所有测试都通用的东西。在您的例子中,可以使用DataDrivenTest()或TestContext(),但我建议您使用扩展基类的单独类。然后你会把很多测试分成不同的组,并把它分成不同的文件。现在我已经使用了SetURL和GetURL属性,并在我的[TestInitialize]方法中使用了这些属性。因此,我们不能在[TestInitialize]方法中直接传递URL变量。??不。TestInitialize应该设置所有测试通用的东西。在您的例子中,可以使用DataDrivenTest()或TestContext(),但我建议您使用扩展基类的单独类。然后你会把很多测试分成不同的组,并把它分成不同的文件。现在我已经使用了SetURL和GetURL属性,并在我的[TestInitialize]方法中使用了这些属性。