gpt4 book ai didi

c# - 是否可以在程序集中的所有测试之前和之后执行一个方法?

转载 作者:IT王子 更新时间:2023-10-29 04:29:56 25 4
gpt4 key购买 nike

我想为 selenium ui 自动化构建一个 nunit 项目。我想在运行所有测试(所有测试)之前登录该站点,并在运行所有测试(所有测试)之后关闭浏览器。

我不能使用 SetUp,因为它与固定装置有关,我想在一切之前和之后进行。

你知道该由谁来执行吗?


我熟悉 SetUp 和 TearDown 属性。让我再解释一遍。

我需要在所有固定装置的所有测试开始之前执行一些逻辑(AKA - 整个程序集中的第一个测试)以及在所有固定装置的所有测试结束后执行一些逻辑(AKA - 整个程序集中的最后一个测试).

最佳答案

如果您所有的测试装置都在同一个命名空间中,那么您可以使用 [SetUpFixture] 属性将一个类标记为全局设置和拆卸。然后,您可以将所有登录/注销功能放在那里。

NUNIT 2.x

namespace MyNamespace.Tests
{
using System;
using NUnit.Framework;

[SetUpFixture]
public class TestsSetupClass
{
[SetUp]
public void GlobalSetup()
{
// Do login here.
}

[TearDown]
public void GlobalTeardown()
{
// Do logout here
}
}
}

参见: http://www.nunit.org/index.php?p=setupFixture&r=2.4

NUNIT 3.x

namespace MyNamespace.Tests
{
using System;
using NUnit.Framework;

[SetUpFixture]
public class TestsSetupClass
{
[OneTimeSetUp]
public void GlobalSetup()
{
// Do login here.
}

[OneTimeTearDown]
public void GlobalTeardown()
{
// Do logout here
}
}
}

参见: https://github.com/nunit/docs/wiki/SetUpFixture-Attribute

关于c# - 是否可以在程序集中的所有测试之前和之后执行一个方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18485622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com