Tag: xunit xunit.net

创建IEqualityComparer <IEnumerable >

我正在使用xUnit,如果T是自定义类型,它无法确定2 IEnumerable是否相等。 我已经尝试过使用LINQ SequenceEqual但是由于T的实例不同,所以返回false; 这是一个使用非工作IEqualityComparer的基本测试 [Fact] public void FactMethodName() { var one = new[] { new KeywordSchedule() { Id = 1 } }; var two = new[] { new KeywordSchedule() { Id = 1 } }; Assert.Equal(one, two, new KeywordScheduleComparer()); } public class KeywordScheduleComparer : IEqualityComparer<IEnumerable> { public bool Equals(IEnumerable x, IEnumerable y) { return […]

如何在xUnit.net测试中仅运行一次安装代码

我正在尝试使用Xunit设置我的测试。 我要求删除测试文件夹开头的所有图像,然后每个方法都会调整一些图像大小,并将其输出的副本保存到文件夹中。 该文件夹只应清空一次,然后每个方法将自己的图像保存到该文件夹​​中。 当我使用IUseFixture ,在每次测试之前仍然会调用ClearVisualTestResultFolder函数,所以我最终只在文件夹中有一个图像。 public class Fixture { public void Setup() { ImageHelperTest.ClearVisualTestResultFolder(); } } public class ImageHelperTest : IUseFixture { public void SetFixture(EngDev.Test.Fixture data) { data.Setup(); } public static void ClearVisualTestResultFolder() { // Logic to clear folder } } 如果我将ClearVisualTestResultFolder放在构造函数中,那么每个测试方法也会调用一次。 我需要在执行所有测试方法之前运行一次,我该如何实现? 如果重要,我使用ReSharper测试运行器。