Bonjour
Dans mon projet, j'ai créé une classe de test unitaires que je lance avec ZaneBug.
Je voudrais que classe ne soit pas compilé dans la version release de mon programme mais seulement en version debug. En fouinant sur le net, j'avais pensé trouver la solution avec les Conditional attribute classes.
Le problème c'est que je ne comprends pas comment ça fonctionne. Et surtout, je me suis aperçu que si je mets seulement la ligne suivante:
public class TestAttribute : Attribute { }
toutes mes procédures de tests disparaissent à la compilation et ZaneBug ne les retrouve plus. Voilà mon code (épuré):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
using System;
using Adapdev.UnitTest;
namespace DBUpdater
{
public class TestAttribute : Attribute { }
[TestFixture]
public class Tests
{
[Test]
public void GetDataConfig()
{
Adapdev.UnitTest.Assert.IsTrue(!string.IsNullOrEmpty(Utils.DataConfig().Catalog));
}
}
} |
Je pensais plutôt faire comme indiqué sur le lien cité plus haut mais quelle que soit la façon de mixer les éléments, rien ne marche.
Je croyais avoir compris qu'il fallait écrire :
1 2 3 4 5 6 7
|
[Conditional("DEBUG")]
public class TestAttribute : Attribute { }
[TestFixture]
public class Tests
{ |
Et que ça suffirait en fonction du mode de compilation.
Quelqu'un pourrait me montrer mon erreur svp ?
Papy
Partager