尝试创建xUnit测试时出现CS0246错误

时间:2020-04-13 22:53:44

标签: c# visual-studio-code xunit cs0246

我什至还没有尝试测试任何东西,只是想在我的测试BookTests.cs文件中创建Book类的一个实例(我将来要测试)。我已添加对GradeBook.Tests.csproj的引用,因为Gradebook的整个源代码在另一个文件夹中。但是它仍然返回 CS0246错误:找不到类型或名称空间名称'Book'。 您是否缺少程序集引用的using指令?

Gradebook.Tests.csproj with directory tree

using System.Collections.Generic;
namespace Gradebook
{   
    public class Book
    {
       private List<double> grades; 
        private string name;
        public Book(string name)
        {
            this.name = name;
            grades  = new List<double>();
        }
        public void AddGrade(double grade)
        {
           grades.Add(grade);

        }
    }  
}

Book.cs

using System;
using Xunit;

namespace GradeBook.Tests
{
    public class BookTests
    {
        [Fact]
        public void Test1()
        {
            //arrange 
            var book2 = new Book("test");           


        }
    }
}

BookTests.cs

代码非常简单,因为我正在关注Pluralsight课程C#基础知识,并且我做了视频中的所有操作。也尝试了 dotnet restore 命令。包含Book.cs的项目路径可能是正确的(当我更改某些其他错误时)。在VSC上工作。我在这里想念什么?

1 个答案:

答案 0 :(得分:0)

我知道距此最近一次更新已有2个月了,但是出现问题的原因是因为您在Book.cs中使用名称空间Gradebook,但是使用了{{1} }在BookTests.cs中。 (注意大写字母B)

重命名它,使它们都是GradeBook,并确保您的目录名称正确,并且应该没有问题。