Organization of unit testing / integration in a large Visual Studio solution

I am starting to design and organize tests for a very large Visual Studio solution. (Yes, I know that tests should have been developed along with the code, and not when the project is almost complete, but it is.)

I saw similar questions about organizing unit tests in Visual Studio solutions, but I did not see such address integration tests. I would appreciate some recommendations on where to place test projects so that they do not clutter up the already large code base.

Here is the basic hierarchy of things within the solution. (All items that do not end with .proj are folders within the project or Solution Folders.)

  • HardwareServices
    • HardwareService1
      • HardwareService1.Core.proj
      • HardwareService1.Host.proj
      • HardwareService1.Service.proj
    • HardwareService2
      • HardwareService2.Core.proj
      • HardwareService2.Host.proj
      • HardwareService2.Service.proj
  • Infrastructure
    • MyApp.Database.proj
    • MyApp.Infrastructure.proj
    • MyApp.ReportViewer.proj
    • MyApp.SettingsManager.proj
  • Appmodules
    • AppModule1.proj
      • Are common
      • Reports
      • Services
      • ViewModels
      • representation
    • AppModule2.proj (similar structure for other AppModules)
    • AppModule3.proj (similar structure for other AppModules)
  • Modules
    • ComputeEngine.proj
    • Footer.proj
    • Header.proj
    • CommonServices.proj

My thought was to create a solution folder called "Tests" and then simulate the hierarchy above by creating one test project for each production code project. For each test project, I would make folders called "UnitTests" and "IntegrationTests".

, /, , . /, , , .

.

+5
1

, , projectName.Tests.Unit projectName.Tests.Integration.

- :

  • HardwareService1
    • HardwareService1.Core.proj
    • HardwareService1.Host.proj
    • HardwareService1.Service.proj
      • HardwareService1.Core.Tests.Unit
      • HardwareService1.Core.Tests.Integration

, , .

, Tests.Unit, script, , **\*tests.unit*.dll

, , .

+2

All Articles