ASP.NET-5测试库未发现主代码
本文关键字:代码 未发现 NET-5 测试 ASP | 更新日期: 2023-09-27 18:24:28
我有一个以net451
和dotnet5.4
为目标的类库。这两个名字都是ASP.NET vNext中类库的推荐名字。然而,我的单元测试是基于xUnit的,因此必须针对dnx451
和dnxcore50
。然而,这导致我的测试项目没有发现我想要测试的类。它只是说无法解析Symbol
有没有办法绕过这一点,除了将我的类库重新定位为与我的测试项目相同的名字(这真的很愚蠢,tbh)
这是我的测试项目的项目.json
{
"version": "1.0.0-*",
"description": "Test Class Library",
"authors": [ "Robert" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"dependencies": {
"SemanticVersion": "1.0.0-*",
"xunit": "2.1.0",
"xunit.runner.dnx": "2.1.0-rc1-build204"
},
"commands": {
"test": "xunit.runner.dnx"
},
"frameworks": {
"dnx451": { },
"dnxcore50": {
"dependencies": {
"Microsoft.CSharp": "4.0.1-beta-23516",
"System.Collections": "4.0.11-beta-23516",
"System.Linq": "4.0.1-beta-23516",
"System.Runtime": "4.0.21-beta-23516",
"System.Threading": "4.0.11-beta-23516"
}
}
}
}
此外,以下是来自主库的project.json:
{
"version": "1.0.0-*",
"description": "SemanticVersion Class Library",
"authors": [ "Robert" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"frameworks": {
"net451": { },
"dotnet5.4": {
"dependencies": {
"Microsoft.CSharp": "4.0.1-beta-23516",
"System.Collections": "4.0.11-beta-23516",
"System.Linq": "4.0.1-beta-23516",
"System.Runtime": "4.0.21-beta-23516",
"System.Threading": "4.0.11-beta-23516"
}
}
}
}
为了进行进一步的调试,下面是有问题的代码:
namespace Semver
{
public class SemanticVersion
{
public int Major { get; set; }
public int Minor { get; set; }
public int Patch { get; set; }
public string Prerelease { get; set; }
public string Build { get; set; }
public static SemanticVersion Parse(string versionString, bool strict = false)
{
// Code here
}
}
}
namespace SemanticVersionTest
{
using Xunit;
using Semver;
public class ParseTests
{
[Fact]
public void ParseMajor()
{
SemanticVersion version = SemanticVersion.Parse("1");
Assert.Equal(1, version.Major);
Assert.Equal(0, version.Minor);
Assert.Equal(0, version.Patch);
}
}
}
正如我之前的评论中所描述的,我也遇到了这个问题。在我的案例中,问题是ReSharper,因为项目仍将构建,我仍然可以使用F12进行导航。我注意到,在更新R#时,我收到了一个错误
CrossAppDomainPointer为NULL。
在以管理员身份启动安装程序后,我通过重新安装R#解决了这个问题。希望这能有所帮助!