Wie testet ich .NET -Quellgenerator mit Projektreferenz und transitiven Nuget -Abhängigkeiten?C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Wie testet ich .NET -Quellgenerator mit Projektreferenz und transitiven Nuget -Abhängigkeiten?

Post by Anonymous »

Ich habe ein .NET Analyzer (Quellgenerator) Projekt, das auf ein Nuget -Paket verweist. Ich versuche, ein Integrationstestprojekt zu erstellen, um den Quellgenerator unter realen Bedingungen zu testen. Um dies zu erreichen, verwies ich auf das SG -Projekt im Testprojekt und erhielt eine Fehlermeldung, dass die Nuget -Abhängigkeit nicht gefunden wurde. Hier ist die Projektstruktur. Es ist gepackt und gedrückt.

Code: Select all



netstandard2.0
latest
enable


true
true


1.0.0



runtime; build; native; contentfiles; analyzers; buildtransitive
all




Projekt 2: SourceGenerator.csproj Dies ist das Projekt, das den tatsächlichen Quellgenerator enthält, den ich testen muss, und es verweist Projekt 1 als Nuget-Paket.

Code: Select all



netstandard2.0
latest
enable


true
true
true


0.0.0
true
false


Analyzer
false



NU5128



runtime; build; native; contentfiles; analyzers; buildtransitive
all



















Projekt 3: SourceGenerators.Tests.integration.csproj Dies ist das Integrationstestprojekt. Ich möchte hier als Projektreferenz nicht nuget verweisen.

Code: Select all



net9.0
enable


true


false


true



runtime; build; native; contentfiles; analyzers; buildtransitive
all





runtime; build; native; contentfiles; analyzers; buildtransitive
all






Angenommen, ich versuche, SourceGeneratoren.Tests.integration.csproj zu erstellen. Ich erhalte einen Fehler "CSC: Fehler CS8032: Ein Instanz von Analysator SourcGenerators. Laste Datei oder Montage 'Commonlibrary, Version = 1.0.0.0, Culture = Neutral, PublicKeyToken = NULL'. Ich weiß nicht, wie man Abhängigkeiten ordnungsgemäß "lösen", wenn sie als Projekt bezeichnet werden, und ich brauche dies speziell für Testzwecke (ich möchte kein neues Nuget -Paket für jede Änderung drücken). Gibt es einen etablierten Weg, um diese Aufgabe zu erfüllen? Ich habe Zugriff auf all diese Projekte sowie Nuget -Feed und kann bei Bedarf Änderungen vornehmen. Datei.
Hinzufügen von Referenz zum Commonlibrary -Nuget -Paket direkt.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post