我有一个集成测试项目,在其中启动我的实际应用程序服务器的测试版本。我使用测试启动来扩展实际应用程序的启动。
- MyApp.Web/
|
\ Pages/
|
\ Index.cshtml
\ Index.cshtml.cs
\ Startup.cs
- Tests/
|
\ MyApp.Tests.IntegrationTests/
|
\ TestStartup.cs // Extends Startup in MyApp project
\ TestFixture.cs // Starts the test server using TestStartup.
因为我正在运行测试程序集,所以找不到Pages目录,因此找不到我的路线。如何告诉TestStartup包含上面的Pages目录?
我看了this post,但是这似乎太令人费解了。这个家伙有很多逻辑,就像骇客一样。必须有一种更清洁的方法来做到这一点?
此外,如果有一种方法可以通过名称空间而不是目录来实现,我更愿意(尽管不可能)。就像您可以说“使用“ MyApp.Pages”命名空间中的所有类”,而不是“使用此目录中的所有文件”一样。由于目录名称可能会在重构时发生变化,具体取决于每个开发人员将其放置在系统上的位置(我将我的位置放置在〜/ projects /中,但其他人可能会将它们放置在〜/ WorkProjects中。更不用说Windows路径vs Unix路径)。