Ahora el 95 (%) del código que escribo está acompañado de PruebasUnitarias.
Esto significa que cada vez que quiero (ejecutar, depurar, probar..) tengo varias opciones.
1)Abrir NUnit, cargar el assembly y RunTests !
2)Pegarme al proceso con DebugProcess de VS
3) configurar el proyecto para que al ejecutar arranque NUnit.
Esta ultima es la que hago más amenudo, asi que harto de repetir
la misma tarea una y otra vez he decido hacer una macro:
Imports EnvDTE Imports System.Diagnostics Imports VSLangProjPublic Module NUnitProjectEnabler
Private CurrentProject As VSProject
Private Const NUNIT_PATH As String = "c:\Program Files\NUnit V2.0\bin\nunit.framework.dll"
Private Const NUNITGUI_PATH As String = "c:\Program Files\NUnit V2.0\bin\nunit-gui.exe"Private Sub setTargetProject()
CurrentProject = DTE.ActiveSolutionProjects(0).Object
End Sub
Private Sub AddNUnitRef()
CurrentProject.References.Add(NUNIT_PATH)
End SubPrivate Sub SetDebugProperties()
Dim assemblyName As EnvDTE.Property = CType(CurrentProject.Project.Properties.Item("AssemblyName"), EnvDTE.Property)
Dim configProps As Properties = CurrentProject.Project.ConfigurationManager.ActiveConfiguration.Properties
With configProps
.Item("StartAction").Value = prjStartAction.prjStartActionProgram
.Item("StartProgram").Value = NUNITGUI_PATH
.Item("StartArguments").Value = "/assembly:" + assemblyName.Value + ".dll"
End WithEnd Sub
Public Sub EnableProject()
setTargetProject()
AddNUnitRef()
SetDebugProperties()
End Sub
End Module
como veis las rutas estan puestas a "capon"..
Estoy empezando a utilizar esto de los "Unit Test" y me surge una duda... ¿Como pruebas formularios de usuario? Me imagino que pruebas los eventos que disparan los controles, no?
Un saludo.
Buena pregunta. La verdad es que no hay una respuesta fácil a esta pregunta. Basicamente hay dos opciones.
1) Usar una herramienta. Depende del tipo de UI puede ser más o menos factible hacertela tu mismo. Si no quieres hacerla tu, o la plataforma es compleja puedes usar algunas de las comerciales http://www.qalinks.com
2) Separar la logica del UI, y probar la logica separadamente, si necesitas más info busca por MVC.
Posted by: rido on 15 de Septiembre 2003 a las 01:57 PM