2016-11-09 1 views
1
nicht gefunden

In meinem Namensraum Draughts habe ich zwei Projekte, Draughts und Draughts.UnitTests. Wenn ich versuche, auf Draughts Methoden/Klassen in Draughts.UnitTests zuzugreifen, kann es überhaupt nichts finden. An der Spitze von Draughts.UnitTests setze ich using Draughts. Irgendwelche Ideen?Projektklassen/Methoden im Testprojekt

BoardUnitTests.cs

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using Draughts; 
using NUnit.Framework; 

namespace Draughts.UnitTests 
{ 
    public class BoardUnitTests 
    { 
     private Board GetBoard() 
     { 
      return true; 
     } 

     [Test] 
     public void CheckValidBoardPosition_ValidPosition_ReturnsTrue() 
     { 
      Assert.AreEqual(1, 1); 
     } 
    } 
} 

In dem obigen Code nicht Vorstand, die eine Klasse erkennen kann ich in Draughts definiert haben.

Hier ist ein Screenshot von meiner Lösung Explorer: nicht einen Verweis auf Draughts auf Ihrem Unit-Test-Projekt haben

enter image description here

+2

hat 'Draughts.UnitTests' einen Verweis auf' Draughts'? – Jonesopolis

+0

Beachten Sie, dass eine 'using' Direktive _bot_ die gleiche ist wie eine [reference] (https://msdn.microsoft.com/en-us/library/wkze6zky.aspx). –

+0

Das war mein Problem https://stackoverflow.com/questions/1211707/how-to-access-classes-in-andere-assembly-for-unit-testing-purposes –

Antwort

3

Wahrscheinlich ist dies auf eines dieser Dinge

Zusammenhang

1) Sie

2) Klassen auf Draughts sind nicht öffentlich, daher können Sie sie nicht außerhalb des Projekts sehen, zu dem sie gehören

+1

Wusste nicht, dass Sie explizit eine Referenz durch hinzufügen mussten Hinzufügen> Referenz im Solution Explorer. Vielen Dank. – Dockson

0

Ich weiß, dass das ziemlich alt ist, aber ich bin auf diese Frage gestoßen, als ich nach einer Lösung für mein Problem suchte. Für mich stellte sich heraus, dass mein Testprojekt und das Tested-Projekt auf zwei verschiedenen Versionen von .NET Framework ausgeführt wurden. Ich habe eine aktualisiert, aber die andere vergessen. Sobald ich das Test-Projekt aktualisiert, um die getesteten zu entsprechen, hat alles funktioniert, wie es sollte

Hoffe, das hilft der nächsten Person! :)

Verwandte Themen