相关疑难解决方法(0)

在VS2017 .Net标准库中对内部方法进行单元测试

我目前正在使用最新的Visual Studio 2017 Release Candidate来创建.Net Standard 1.6库.我正在使用xUnit对我的代码进行单元测试,并且想知道你是否仍然可以在VS2017中测试内部方法.

我记得你可以在VS2015中使用一行AssemblyInfo.cs类来使指定的项目能够看到内部方法

[assembly:InternalsVisibleTo("MyTests")]
Run Code Online (Sandbox Code Playgroud)

由于VS2017 .Net标准项目中没有AssemblyInfo.cs类,我想知道您是否还可以对内部方法进行单元测试?

c# unit-testing visual-studio-2017 .net-standard

128
推荐指数
4
解决办法
3万
查看次数

使代码内部但可用于其他项目的单元测试

我们将所有单元测试都放在他们自己的项目中.我们发现我们必须将某些类公开而不是内部仅用于单元测试.无论如何都要避免这样做.通过将类公开而不是密封来实现内存含义是什么?

c# unit-testing scope

123
推荐指数
3
解决办法
6万
查看次数

如何测试内部类库?

我想写一个类库,它为我创建一个复杂的对象,但应该尽可能少地暴露.我希望它被包含到其他项目中,我只有一个调用这个库,例如返回一个内部创建的类的对象.我不想让其他人明确地创建这些对象,但我仍然想为这个类库创建一个测试项目.

例如:

var result = Manager.Instance.Create(definition)
Run Code Online (Sandbox Code Playgroud)

这应该是对类库的唯一访问.

基于definition参数,它使用不同的子类来创建请求的实例并相应地设置其属性.因此,我想通过测试以某种方式确保整个创建过程运行良好.但是因为我也不想暴露结果对象的非常少的内部属性,所以我不能仅使用这种公共访问方法进行测试,因为我没有任何属性可以断言.

我知道你不应该测试内部机制,它通常是糟糕的设计,我也正在阅读这篇文章,但是没有任何方法可以创建一个库加单元测试项目,也许之后限制访问这个类?用包装纸什么的?

c# unit-testing internal wrapper

56
推荐指数
2
解决办法
3万
查看次数

访问另一个项目的设置文件

有没有办法从不同的项目访问设置文件?例如,我有一个包含2个项目的解决方案(让我们称之为Proj1和Proj2).我想从Proj1中的Program.cs访问Proj2的应用程序设置.这可能吗?

c# visual-studio-2005 application-settings

42
推荐指数
3
解决办法
4万
查看次数

Visual Studio 2017新版.csproj InternalsVisibleTo

在新的Visual Studio 2017 .csproj项目文件中从AssemblyInfo放置InternalsVisibleTo的位置?

msbuild csproj assemblyinfo visual-studio-2017

42
推荐指数
3
解决办法
8445
查看次数

12
推荐指数
2
解决办法
8236
查看次数

方法是否有可能具有双重访问修饰符?

我有很多内部定义的方法,如下所示:

internal static string GetAJobShaNaNaNaShaNaNaNaNaNa(string Silhouettes)
Run Code Online (Sandbox Code Playgroud)

但是,为了从添加到解决方案的测试项目中调用它们,我需要将其访问修饰符从内部更改为公共.

是否有一种非常繁琐的方法可以将这些方法公开用于测试,但仍然是内部的?

c# access-modifiers internal test-project test-framework

0
推荐指数
1
解决办法
98
查看次数