J'essaie d'écrire un appareil simple qui ouvre le navigateur et navigue vers www.google.com. Quand je lance la page wiki, elle passe avec tout le vert, mais le navigateur ne s'ouvre jamais (je ne pense pas que la méthode soit même appelée par le wiki). Quelqu'un peut-il jeter un oeil à mon appareil et au wiki pour voir ce que je fais de mal? Un grand merci à l'avance,Fitnesse wiki incapable d'appeler la méthode sélénium correctement
Voici le Wiki -
!|SeleniumFitness|
|URL |navigateToSite?|
|http://www.google.com| |
après l'exécution -
!|SeleniumFitnesse| java.lang.NoSuchMethodError: org.openqa.selenium.remote.service.DriverCommandExecutor.<init>(Lorg/openqa/selenium/remote/service/DriverService;Ljava/util/Map;)V
|URL |The instance decisionTable_4.setURL. does not exist|navigateToSite?
|http://www.google.com|!The instance decisionTable_4.navigateToSite. does not exist |
Voici la Fixture -
package FitNesseConcept.fitNesse;
import java.util.Properties;
import org.junit.BeforeClass;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.BeforeMethod;
//import com.google.common.base.Preconditions.*;
//import com.google.common.collect.Lists;
import fit.ColumnFixture;
public class SeleniumFitnesse extends ColumnFixture {
public static ChromeDriver driver = null;
private String navigateToSite = "";
public String URL = "";
public SeleniumFitnesse() {
Properties props = System.getProperties();
props.setProperty("webdriver.chrome.driver", "/home/ninad/eclipse-workspace/chromedriver");
driver = new ChromeDriver();
}
// SET-GET Methods
public String getURL() {
return URL;
}
public void setURL(String uRL) {
URL = uRL;
}
public String getNavigateToSite() {
return navigateToSite;
}
public void setNavigateToSite(String navigateToSite) {
this.navigateToSite = navigateToSite;
}
// Navigate to URL
public void navigateToSite() throws Throwable {
System.out.println("Navigating to Website");
try {
driver.navigate().to(URL);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
Avez-vous une raison particulière d'écrire votre propre (et une autre) intégration de Selenium FitNesse? Avez-vous vérifié les plugins disponibles sur http://fitnesse.org/PlugIns#slimfixtures? –
Pourquoi écrivez-vous un montage de colonne Fit, voulez-vous créer une forme de table de décision? Quand je regarde le code et le wiki, je n'arrive pas à comprendre ce que vous attendez de la table. Lorsque vous souhaitez utiliser une table pour effectuer un certain nombre d'étapes (comme l'ouverture d'une page) de manière séquentielle, je vous recommande de passer au coureur de test Slim et d'utiliser sa table de script (http://fitnesse.org/FitNesse.FullReferenceGuide.UserGuide.WritingAcceptanceTests .SliM.ScriptTable). Votre code actuel utilise une annotation jUnit 'BeforeMethod', ce n'est pas quelque chose qui signifie ou fait quoi que ce soit dans un contexte FitNesse. –
Merci pour votre réponse. Je n'étais pas au courant des plugins slimfixture. Pouvez-vous m'indiquer étape par étape comment les importer dans mon projet eclipse. Est-ce aussi simple que d'ajouter une dépendance maven? Sinon, où est le pot exactement? Un grand merci (fyi - je suis débutant à intermédiaire avec tout ça, je suis habitué au concombre, mais la compagnie pour laquelle je travaille veut de l'ajustement). – noMoreMutants