martes, 16 de julio de 2013

No me sale el namespace del proyecto en los test

Hete aquí una muy buena razón para que MS vuelva a incluir dentro de Visual Studio 2013 la construcción automática de los Test Unitarios y de los proyectos de Test, partiendo de una clase o método.

Hago un proyecto de librería de clases con un solo fichero,

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace JamonEasy_DAL
{
   
public class OperacionesDAL
   
{
       
public void prueba()
        { }
    }
}

A esto que le añado a mano el proyecto de test, y ni corto ni perezoso le añado la referencia al proyecto padre.

Y aquí llega la sorpresa, al utilizar el using, el intellisense me indica que no existe el espacio de nombre JamonEasy_DAL!!

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using JamonEasy_DAL;

namespace JamonEasy_DAL.Test
{
    [
TestClass()]
   
public class OperacionesDALTests
   
{
        [
TestMethod()]
       
public void pruebaTest()
        {
           
Assert.Fail();
        }
    }
}

¿Qué puede estar pasando?

En mi caso la solución ha sido fácil. El proyecto de librería de clases tenía como “target” el framework 4.5.1, y los test se construyen por defecto en 4.5, a secas.

Así, igualando hacia arriba o hacia abajo, se elimina el problema.

P.D. Échale un vistazo mi artículo en GenbetaDev sobre el Unit Test Generator, algo muy recomendable de instalar.

No hay comentarios: