IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tests et Performance Java Discussion :

TestNg Parameter ' is required by @Configuration on method beforeTestGed


Sujet :

Tests et Performance Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 716
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 716
    Par défaut TestNg Parameter ' is required by @Configuration on method beforeTestGed
    Bonsoir,

    Depuis Maven2, j'ai le message d'erreur suivant lorsque je lance mon TestNg.

    Parameter 'outilStockage.pz.racine' is required by @Configuration on method beforeTestGed
    but has not been marked @Optional or defined



    Le fichier src/test/resources/testng.xml existe bien avec les parametres et dans le source les annotations sont presente a l'appel de la methode beforeTestGed.
    Je seche sur le parametre soit disant manquant ?
    J'ai l'impression que mon fichier testng.xml n'est pas pris en compte !!

    J'utilise Helios, le JDK 1.6.0.22 et maven 2.2.21
    Dans mon pom.xml je force source et target a 1.5 pour le JDK .
    Le projet eclipse a ete génére a partir du pom par un mvn eclipse:eclipse


    Merci d'avance
    Philippe

    Mes sources
    Message d'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    <testng-results>
    <reporter-output>
    </reporter-output>
    <suite name="Default suite" duration-ms="32" started-at="2010-11-04T07:04:28Z" finished-at="2010-11-04T07:04:28Z">
    <groups>
    <group name="functional">
    <method signature="pr.archivage.traitements.test.TraiterArchiveTest.testDonnerArchiveSansPDF()" name="testDonnerArchiveSansPDF" class="pr.archivage.traitements.test.TraiterArchiveTest"/>
    </group>
    </groups>
    <test name="pr.archivage.traitements.test.TraiterArchiveTest" duration-ms="32" started-at="2010-11-04T07:04:28Z" finished-at="2010-11-04T07:04:28Z">
    <class name="pr.archivage.traitements.test.TraiterArchiveTest">
    <test-method status="FAIL" signature="beforeTestGed(java.lang.String, java.lang.String, java.lang.String, java.lang.String)" name="beforeTestGed" is-config="true" duration-ms="0" started-at="2010-11-04T07:04:28Z" finished-at="2010-11-04T07:04:28Z">
    <exception class="org.testng.TestNGException">
    <message>
    <![CDATA[
    Parameter 'outilStockage.pz.racine' is required by @Configuration on method beforeTestGed
    but has not been marked @Optional or defined in C:\Documents and Settings\U1\Local Settings\Temp\testng-eclipse--359975533\testng-customsuite.xml]]>
    </message>
    <full-stacktrace>
    <![CDATA[org.testng.TestNGException: 
    Parameter 'outilStockage.pz.racine' is required by @Configuration on method beforeTestGed
    but has not been marked @Optional or defined in C:\Documents and Settings\U1\Local Settings\Temp\testng-eclipse--359975533\testng-customsuite.xml
    at org.testng.internal.Parameters.createParameters(Parameters.java:142)
    at org.testng.internal.Parameters.createParameters(Parameters.java:320)
    at org.testng.internal.Parameters.createConfigurationParameters(Parameters.java:76)
    at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:186)
    at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:126)
    at org.testng.TestRunner.beforeRun(TestRunner.java:624)
    at org.testng.TestRunner.run(TestRunner.java:592)
    at org.testng.SuiteRunner.runTest(SuiteRunner.java:315)
    at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:310)
    at org.testng.SuiteRunner.privateRun(SuiteRunner.java:272)
    at org.testng.SuiteRunner.run(SuiteRunner.java:221)
    at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
    at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
    at org.testng.TestNG.runSuitesSequentially(TestNG.java:952)
    at org.testng.TestNG.runSuitesLocally(TestNG.java:889)
    at org.testng.TestNG.run(TestNG.java:818)
    at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:89)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:144)
    ]]>
    </full-stacktrace>
    </exception>
    </test-method>
    <test-method status="SKIP" signature="beforeTestHibernate(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)" name="beforeTestHibernate" is-config="true" duration-ms="0" started-at="2010-11-04T07:04:28Z" finished-at="2010-11-04T07:04:28Z">
    </test-method>
    <test-method status="SKIP" signature="testDonnerArchiveSansPDF()" name="testDonnerArchiveSansPDF" duration-ms="0" started-at="2010-11-04T07:04:28Z" finished-at="2010-11-04T07:04:28Z">
    </test-method>
    <test-method status="SKIP" signature="afterTest()" name="afterTest" is-config="true" duration-ms="0" started-at="2010-11-04T07:04:28Z" finished-at="2010-11-04T07:04:28Z">
    </test-method>
    </class>
    </test>
    </suite>
    </testng-results>
    src/test/resources/testng.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
     
    <suite name="SuiteClass" verbose="5" >
    <parameter name="hibernate.connection.url" value="jdbc:mysql://192.168.17.4:3306/RR"/>
    <parameter name="hibernate.connection.username" value="toto"/>
    <parameter name="hibernate.connection.password" value="xxx"/>
    <parameter name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
    <parameter name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
    <parameter name="outilStockage.pz.racine" value="C:/StockageGed"/>
    <parameter name="outilStockage.pz.sleepTime" value="2"/>
    <parameter name="outilStockage.pz.tentative" value="10"/>
    <parameter name="outilStockage.debug.niveau" value="WARNING"/>
     
    <test name="FunctionalTest">
    <groups>
    <run>
    <include name="functional"/>
    </run>
    </groups>
    <classes>
    <class name="pr.archivage.traitements.test.TraiterArchiveTest"/>
    </classes>
     
    </test>
    </suite>
    Code classe de test dans src/test/java/pr/archivage/traitements/test
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
     
     
    package pr.archivage.traitements.test; 
     
    import java.io.IOException;
    import java.io.PrintWriter;
    import java.io.StringWriter;
    import java.util.List;
    import java.util.Properties; 
    import org.testng.TestNG;
    import org.testng.annotations.AfterTest;
    import org.testng.annotations.BeforeTest;
    import org.testng.annotations.Parameters;
    import org.testng.annotations.Test; 
    import pr.archivage.exceptions.ArchivageException;
    import pr.archivage.traitements.TraiterArchive;
    import pr.archivage.traitements.impl.TraiterArchiveImpl;
    import pr.persistence.configuration.HibernateUtil;
    import pr.persistence.model.Z_VGED;
    import pr.persistence.stockage.physique.StockageService;
    import pz.utils.gen.PDebugLogServiceAdapter;
    import pz.utils.gen.PILogService;
    import pz.utils.gen.PLoggueurFichier; 
     
    public class TraiterArchiveTest {
     
    private TraiterArchive traiterArchive;
     
    private String nirAvecPdfValid = "2570109110031";
    private String nirSansPdfValid = "2570109110001";
    private String nomValid = "DUPONT";
     
    private String nirInvalid = "1234567891234";
    private String nomInvalid = "TOTO";
     
    @Parameters({ "hibernate.connection.url", "hibernate.connection.username", "hibernate.connection.password", "hibernate.connection.driver_class", "hibernate.dialect" })
    @BeforeTest (groups = { "functional" })
    public void beforeTestHibernate(String url, String username, String password, String driverClass, String dialect) {
    Properties prop = new Properties();
    prop.setProperty("hibernate.connection.url", url);
    prop.setProperty("hibernate.connection.username", username);
    prop.setProperty("hibernate.connection.password", password);
    prop.setProperty("hibernate.connection.driver_class", driverClass);
    prop.setProperty("hibernate.dialect", dialect);
    prop.setProperty("hibernate.current_session_context_class", "thread");
    HibernateUtil.init(prop);
    HibernateUtil.beginTransaction();
    traiterArchive = new TraiterArchiveImpl();
    }
     
    @Parameters({ "outilStockage.pz.racine", "outilStockage.pz.sleepTime", "outilStockage.pz.tentative", "outilStockage.debug.niveau"})
    @BeforeTest (groups = { "functional" })
    public void beforeTestGed(String racine, String sleepTime, String tentative, String niveau) throws IOException {
    Properties prop = new Properties();
    prop.setProperty("outilStockage.pz.racine", racine);
    prop.setProperty("outilStockage.pz.sleepTime", sleepTime);
    prop.setProperty("outilStockage.pz.tentative", tentative);
    prop.setProperty("outilStockage.debug.niveau", niveau);
     
     
    StockageService.setProperties(prop);
    String strNiveau = prop.getProperty("outilStockage.debug.niveau");
    int niv = PDebugLogServiceAdapter.getNiveauInt(strNiveau); 
     
    PDebugLogServiceAdapter loggueur = 
    new PDebugLogServiceAdapter(
    niv,new PLoggueurFichier("../log/outilStockageVal.log"));
     
    StockageService.setLoggueur(loggueur);
     
     
    }
     
     
    @AfterTest (groups = { "functional" })
    public void afterTest() {
    HibernateUtil.commit();
    HibernateUtil.shutdown();
    }
     
    @Test (groups = { "functional" })
    public void testDonnerArchiveAvecPDF(){
    try {
    List<Z_VGED> listZVGED = traiterArchive.donnerArchive(nirAvecPdfValid, nomValid);
    assert listZVGED != null : "listZVGED doit tre diffrent de null";
    assert listZVGED.size()>= 1 : "listZVGED  une taille infrieur  1";
    assert listZVGED.get(0).getZ_VGED_SRC() != null : "La source PDF est absente";
    } catch (ArchivageException e) {
    throw new RuntimeException("Une ArchiveAxception est survenue: " + e.getErrorType() + ", " + e.getMessage(), e );
    }
    }
     
    @Test (groups = { "functional" })
    public void testDonnerArchiveSansPDF(){
    try {
    List<Z_VGED> listZVGED = traiterArchive.donnerArchive(nirSansPdfValid, nomValid);
    assert listZVGED != null : "listZVGED doit tre diffrent de null";
    assert listZVGED.size()== 1 : "listZVGED  une taille diffrente de 1";
    assert listZVGED.get(0).getZ_VGED_SRC() == null : "La source PDF est prsente";
    } catch (ArchivageException e) {
    throw new RuntimeException("Une ArchiveAxception est survenue");
    }
    }
     
    @Test (groups = { "functional" })
    public void testDonnerArchiveAvecNirNull(){
    boolean isNotAnArchiveException = true;
    try {
    traiterArchive.donnerArchive(null, nomValid);
    } catch (ArchivageException e) {
    isNotAnArchiveException = false;
    }
    if (isNotAnArchiveException){
    throw new RuntimeException("Une ArchiveAxception n'est pas survenue");
    }
    }
     
    public static void main(String[] args) {
    String arg[] = {"-d",
    "target/test-reports",
    "src/test/resources/testng.xml"};
    TestNG.main(arg);
    }
    }
    testng-customsuite.xml récupére a la volée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
     
    <!DOCTYPE suite (View Source for full doctype...)> 
    - <suite name="Default suite" junit="false" parallel="false" configfailurepolicy="skip" thread-count="5" skipfailedinvocationcounts="false" data-provider-thread-count="10"> 
    <parameter name="outilStockage.debug.niveau" value="WARNING" /> 
    <parameter name="outilStockage.pz.racine" value="C:/StockageGed" /> 
    <parameter name="hibernate.connection.url" value="jdbc:mysql://192.168.17.4:3306/RR" /> 
    <parameter name="hibernate.connection.username" value="toto" /> 
    <parameter name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" /> 
    <parameter name="hibernate.connection.password" value="xxx" /> 
    <parameter name="outilStockage.pz.sleepTime" value="2" /> 
    <parameter name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" /> 
    <parameter name="outilStockage.pz.tentative" value="10" /> 
    - <test verbose="2" name="pr.archivage.traitements.test.TraiterArchiveTest" junit="false" skipfailedinvocationcounts="false" preserve-order="false"> 
    - <classes> 
    <class name="pr.archivage.traitements.test.TraiterArchiveTest" /> 
    </classes> 
    </test> 
    </suite>

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 716
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 716
    Par défaut
    Pb résolu, cela venait d'un soucis de conf d'Hibernate.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/07/2007, 17h29
  2. "No value given for one or more required parameters", et pourtant si !?
    Par Astartee dans le forum Accès aux données
    Réponses: 1
    Dernier message: 29/05/2007, 14h07
  3. Réponses: 2
    Dernier message: 28/03/2007, 22h25
  4. Réponses: 1
    Dernier message: 28/04/2006, 20h36
  5. [Configuration] chemin d'un fichier dans un include/require
    Par BizuR dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 22
    Dernier message: 31/01/2006, 01h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo