Creare un template di progetto per NUnit

Premessa: questo template é stato creato per VB.NET, penso che la creazione di un analogo per C# sia abbastanza simile.

Settimana scorsa mi sono finalmente deciso a dare una svolta alla noiosissima questione della creazione di progetti per effettuare unit testing con NUnit, così ho iniziato a spulciare in rete, tra prove ed errori, in maniera completamente empirica questo é quanto sono riuscito a mettere insieme.

Scopo: creare un template di progetto che contenga una classe e:

Riferimento (e riferimento importato a livello di progetto) all'assembly Nunit.framework

Avvio programma esterno: c:\programmi\nunit\bin\nunit-gui.exe

 

Ecco il mio procedimento:

Aprire la cartella C:\Programmi\Microsoft Visual Studio .NET 2003\Vb7\VBProjects

Copiare il file ClassLibrary.vsz in NUnitTestLibrary.vsz

Aprire il file appena creato e modificare la linea: Param="WIZARD_NAME= NUnitTestLibrary"

Aprire la cartella C:\Programmi\Microsoft Visual Studio .NET 2003\Vb7\VBWizards

Copiare la cartella ClassLibrary in NUnitTestLibrary

Aprire la cartella C:\Programmi\Microsoft Visual Studio .NET 2003\Vb7\VBWizards\NUnitTestLibrary\Scripts\1040

Editare il file default.js, costituendo tutte le occurrenze (una sola ) di ClassLibrary con \\NUnitTestLibrary
Aprire la cartella C:\Programmi\Microsoft Visual Studio .NET 2003\Vb7\VBWizards\NUnitTestLibrary\Templates\1040

Rinominare il file ClassLibrary.vbproj in NUnitTestLibrary.vbproj

Aprire il file NUnitTestLibrary.vbproj con un editor di testo (Non VS.NET)

 

Aggiungere le seguenti 4 linee nelle sezioni config:

StartAction = "Program"
StartArguments = "Test.dll"
StartProgram = "c:\Programmi\NUnit V2.1\bin\nunit-gui.exe"
StartWorkingDirectory = "\bin"

 

Aggiungere alla sezione References questo TAG:

<Reference Name = "nunit.framework"
 AssemblyName = "nunit.framework"
 HintPath = "c:\Programmi\NUnit V2.1\bin\nunit.framework.dll"
 AssemblyFolderKey = "hklm\dn\corival assemblies"
/>

Aggiungere alla sezione Imports questo TAG:

<Import Namespace = "nunit.framework" />

Chiudete, salvate, pregate ed avviate Visual Studio!


Segue qui il file vbproj completo (come fatto sulla mia macchina)

 

<VisualStudioProject>
    <VisualBasic>
        <Build>
            <Settings
                OutputType = "Library"
                StartupObject = ""
         >
                <Config
                    Name = "Debug"
                    DebugSymbols = "true"
                    DefineDebug = "true"
                    DefineTrace = "true"
                    IncrementalBuild = "true"
                    OutputPath = "bin"

                    StartAction = "Program"
                    StartArguments = "Test.dll"
                    StartPage = ""
                    StartProgram = "c:\Programmi\NUnit V2.1\bin\nunit-gui.exe"
                    StartURL = ""
                    StartWorkingDirectory = "\bin"

                />
                <Config
                    Name = "Release"
                    DebugSymbols = "false"
                    DefineDebug = "false"
                    DefineTrace = "true"
                    IncrementalBuild = "false"
                    Optimize = "true"
                    OutputPath = "bin"
                />
            </Settings>
            <References>
                <Reference Name = "System" />
                <Reference Name = "System.Data" />
                <Reference Name = "System.XML" />
  <Reference Name = "nunit.framework"
   AssemblyName = "nunit.framework"
   HintPath = "c:\Programmi\NUnit V2.1\bin\nunit.framework.dll"
   AssemblyFolderKey = "hklm\dn\corival assemblies"
  />
            </References>
            <Imports>
                <Import Namespace = "Microsoft.VisualBasic" />
                <Import Namespace = "System" />
                <Import Namespace = "System.Collections" />
                <Import Namespace = "System.Data" />
                <Import Namespace = "System.Diagnostics" />
                <Import Namespace = "nunit.framework" />
            </Imports>
        </Build>
        <Files>
            <Include>
            </Include>
        </Files>
    </VisualBasic>
</VisualStudioProject>

 

 

Io ho anche modificato il file Class.vb in:

<TestFixture()> _
Public Class [!output SAFE_ITEM_NAME]
#Region "Setup e TearDown"
  <TestFixtureSetUp()> _
  Public Sub Setup()
   
  End Sub

  <TestFixtureTearDown()> _
  Public Sub TearDown()
   
  End Sub
#End Region

  <Test()> _
  Public Sub Test()
   
  End Sub
End Class

Print | posted on lunedì 8 novembre 2004 19:56

Comments have been closed on this topic.