- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试对我的 C# ASP.NET 项目进行单元测试,但需要为所有测试运行一些初始化代码:
[TestClass()]
public class Init
{
[AssemblyInitialize]
public static void initialize()
{
ContextProvider.setContext(new TestContext());
}
}
这就是我在测试之前需要运行的所有内容,但它没有运行。我试图调试我所有的测试并在该行中放置一个断点但它没有被击中。如果我注释掉 [AssemblyInitialize]
并运行一个不需要此初始化的特定测试,它会成功运行。然而,有了这一行,没有测试运行(也没有断点)
我在这里错过了什么?
最佳答案
Phil1970 的有用评论有助于解决问题。
初始化方法的问题在于它必须接收 TestContext (Microsoft.VisualStudio.TestTools.UnitTesting.TestContext
)。我找不到任何明确说明这一点的指南/Microsoft 文档,但是 this msdn page 中的示例确实有 TestContext 作为方法的输入。
添加后,测试成功运行。附带一提,我创建了一个类来模拟我需要的一些数据,并将其命名为 TestContext,事实证明这是一个非常糟糕的名称选择,并且更难以理解我的错误。我将它重命名为 APITestContext,这是我固定的初始化类。
[TestClass()]
public class Init
{
[AssemblyInitialize()]
public static void initialize(TestContext testContext)
{
ContextProvider.setContext(new APITestContext());
}
}
关于C# AssemblyInitialize 未运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41465239/
我正在尝试对我的 C# ASP.NET 项目进行单元测试,但需要为所有测试运行一些初始化代码: [TestClass()] public class Init { [AssemblyIniti
我在使用代码覆盖率进行单元测试时遇到了一些奇怪的结果。 在 AssemblyInitialize 函数中我们做了一些初始化工作(比如 AutoMapper,AbstractFactories)并且这个
我正在使用 MsTest V2 framewrok 进行测试。我有测试自动化框架 (TAF) 项目和带测试的项目。测试项目继承自 TAF,仅包含测试。在 TAF 中,我有一个类包含应该在所有测试之前运
我有一个抽象基测试类,它有一个应用于方法的 AssemblyInitialize 属性。但它永远不会被执行......抽象基测试类在另一个程序集中,因为它用于通用扩展。有什么解决办法吗? 代码 [Te
我认为这些属性的全部目的是每个程序集仅运行一次。我有一个简单的类,如下所示: [TestClass] public class AssemblyIntegrationTestSetup { p
有没有办法以编程方式找出在标记为 [AssemblyInitialize] 的方法中运行的 TestCategory? 我想做一些特定于某个测试类别的配置。 最佳答案 不,TestCategory 仅
我在 Visual Studio 2010 中遇到单元测试问题。我在下面粘贴了简化代码。 [TestClass] public class TestClassA { [AssemblyInit
使用 MStest - 我想找到排队等待运行的测试方法的总数。 我应该如何在 ClassInitialize() 或 AssemblyInitialize() 方法中捕获此值。 我唯一得到的是 Tes
我是一名优秀的程序员,十分优秀!