具有SpecFlow挂钩的NuGet软件包

我创建了一个SpecFlow挂钩类,以在BDD Specflow C#项目中生成范围报告。它工作正常,并且生成了报告。

[BeforeTestRun]
public static void InitializeReport()
        {
            //Initialize Extent report before test starts
            var htmlReporter = new ExtentHtmlReporter(reportPath);
            htmlReporter.Config.Theme = Theme.Dark;

            //Attach report to reporter
            extent = new AventStack.ExtentReports.ExtentReports();
            extent.AttachReporter(htmlReporter);
        }

[AfterTestRun]
public static AfterTests()
        {
            //Flush report once test completes
            extent.Flush();
        }

要重复使用相同的代码,我将其作为NuGet库并导入到另一个项目中。但是报告没有生成。我们需要为钩子类创建对象来调用它吗? 在这种情况下,任何人都可以建议如何触发SpecFlow挂钩。

lihaitomsah1 回答:具有SpecFlow挂钩的NuGet软件包

确保在类声明上方添加了[Binding]属性,并且没有多个[BeforeTestRun]或[AfterTestRun]属性。

使用多个[BeforeTestRun][AfterTestRun]应该可以,但不确定您的情况。

,

我昨天有这个问题。您需要将Specflow更新到最新版本Specflow 3.0.x仍然存在[AfterTestRun]挂钩未执行(多年)的错误。

本文链接:https://www.f2er.com/3033337.html

大家都在问