Les paramètres de passe par défaut de la valeur dans TestNG

Je suis confronté à un étrange problème. Avant d'écrire ici, j'ai fait quelques recherches sur ce point, mais ne parvenez pas à résoudre le problème.

Je suis de passage des paramètres, mais il prend la valeur par défaut pour le paramètre c'est à dire "non-Valeur".

Voici mon code

paquet rugueuse; 


import org.testng.les annotations.AfterMethod; 
import org.testng.les annotations.Facultatif; 
import org.testng.les annotations.Les paramètres; 
import org.testng.les annotations.Test; 
import org.testng.les annotations.BeforeMethod; 
import org.testng.Affirmer; 

importer java.util.regex.Motif; 
importer java.util.de façon concomitante.TimeUnit; 

import org.junit.*; 

import static org.hamcrest.CoreMatchers.*; 

import org.openqa.le sélénium.*; 
import org.openqa.le sélénium.le chrome.ChromeDriver; 
import org.openqa.le sélénium.firefox.FirefoxDriver; 
import org.openqa.le sélénium.c'est à dire.InternetExplorerDriver; 
import org.openqa.le sélénium.de soutien.l'interface utilisateur.Sélectionnez; 

public class Navigateurs { 
privé WebDriver conducteur; 
private String baseUrl; 
private boolean acceptNextAlert = true; 
privé de StringBuffer verificationErrors = new StringBuffer(); 

@BeforeMethod 
public void tearDown1() throws Exception { 
Système.out.println("Bonjour de départ"); 

} 
@Test 
@Paramètres({ "NAVIGATEUR" }) 
public void setUp(@Facultatif Chaîne NAVIGATEUR) throws Exception { 

si(NAVIGATEUR.equalsIgnoreCase("FF")) 
{ 
pilote = new FirefoxDriver(); 
} 
d'autre 
si(NAVIGATEUR.equalsIgnoreCase("IE")) 
{ 
Système.setProperty("webdriver.c'est à dire.le pilote", "g:/Selenium Jar Files/IEDriverServer.exe"); 
pilote = new InternetExplorerDriver(); 
} 

baseUrl = "http://book.theautomatedtester.co.uk/"; 
le pilote.gérer().délais d'attente().implicitlyWait(30, TimeUnit.SECONDES); 

Système.out.println("Bonjour starting1111"); 
le pilote.get(baseUrl+"/chapitre 1"); 
le pilote.findElement(Par.id("radiobutton")).cliquez sur(); 
Sélectionnez(pilote.findElement(Par.id("selecttype"))).selectByVisibleText("Selenium RC"); 
} 

@AfterMethod 
public void tearDown() throws Exception { 

Chaîne verificationErrorString = verificationErrors.toString(); 
if (!"".equals(verificationErrorString)) { 
Affirmer.fail(verificationErrorString); 
} 
} 

private boolean isElementPresent(Par) { 
try { 
le pilote.findElement(par); 
return true; 
} catch (NoSuchElementException e) { 
return false; 
} 
} 

private boolean isAlertPresent() { 
try { 
le pilote.switchTo().alert(); 
return true; 
} catch (NoAlertPresentException e) { 
return false; 
} 
} 

private String closeAlertAndGetItsText() { 
try { 
Alerte alerte = pilote.switchTo().alert(); 
Chaîne alertText = alerte.getText(); 
si (acceptNextAlert) { 
l'alerte.accept(); 
} else { 
l'alerte.rejeter(); 
} 
retour alertText; 
} finally { 
acceptNextAlert = true; 
} 
} 
} 

Le langage XML utilisé ici est

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="True">
  <test name="Test">
  <parameter name = "BROWSER" value="FF"/>
    <classes>
          <class name="rough.Browsers"/>
    </classes>
    <test name="Test">
    <parameter name = "BROWSER" value="IE"/>
    <classes>
       <class name="rough.Browsers"/>
    </classes>
  </test> <!-- Test -->
</suite> <!-- Suite -->

Lorsque j'exécute le code d'erreur:

[TestNG] Running:
C:\Users\Administrator\AppData\Local\Temp\testng-eclipse-2137105747\testng-customsuite.xml
Hello starting
FAILED: setUp("not-found")
java.lang.NullPointerException
at rough.Browsers.setUp(Browsers.java:55)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:84)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:714)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
at org.testng.TestRunner.privateRun(TestRunner.java:767)
at org.testng.TestRunner.run(TestRunner.java:617)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)
at org.testng.SuiteRunner.run(SuiteRunner.java:240)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1224)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1149)
at org.testng.TestNG.run(TestNG.java:1057)
at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:111)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175)
  • Quelqu'un peut-il m'aider iam ne pas comprendre pourquoi iam arriver comme "sans valeur"
  • je vois ce param :Exception in thread "main" com.beust.jcommander.ParameterException: option Inconnue: -serport
InformationsquelleAutor Learner | 2014-03-06