我想用asp.net core和xunit测试我的服务。

这是我的服务:

public class MyService : IMyService
{
    public int Add(int x, int y)
    {
        return x + y;
    }
}

public interface IMyService
{
    int Add(int x, int y);
}

我在startup.cs中注册了我的服务
services.AddTransient<IMyService, MyService>();

但是现在如何获取实例并在测试项目中测试我的服务?

到目前为止,在我的测试项目中,我有:
public class Class1
{
    IMyService myService;

    [Fact]
    public void PassingTest()
    {
        Assert.Equal(4, myService.Add(2,2));
    }
}

最佳答案

新建一个实例并调用被测方法。无需过度复杂化。

public class Class1 {

    IMyService myService = new MyService();

    [Fact]
    public void PassingTest()
    {
        Assert.Equal(4, myService.Add(2,2));
    }

}

10-05 22:53
查看更多