Hallo zusammen,
es gibt in diesem Skript eine Fehlermeldung von Eclipse.
Ich gehe einem Tutorial nach und dort steht exakt dieser Code und funktioniert lt. Video auch. Bei mir nicht.
Vollständiger Code:
Es geht um diese Zeile (oben Zeile 139):
Die zugehörige Fehlermeldung:
"The attribute name is undefined for the annotation type Parameterized.Parameters"
und
"Link all references for a local rename (does not change references in other files)"
Hier fehlt mir definitiv Javaverständnis. Was ist da gemeint, was muss ich machen? Im Tutorial steht es genau so und es läuft dort.
Vielen Dank schon mal vorab und viele Grüße!
es gibt in diesem Skript eine Fehlermeldung von Eclipse.
Ich gehe einem Tutorial nach und dort steht exakt dieser Code und funktioniert lt. Video auch. Bei mir nicht.
Vollständiger Code:
Java:
package de.codingsolo.seleniumkurs.test;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import java.util.Collection;
import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;
import java.util.concurrent.TimeUnit;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import de.codingsolo.seleniumkurs.pages.SeleniumKursHomePage;
import de.codingsolo.seleniumkurs.pages.SeleniumKursLoginPage;
import de.codingsolo.seleniumkurs.pages.SeleniumKursTestApplikationenPage;
import de.codingsolo.seleniumkurs.pages.SeleniumKursTestForm1Page;
@RunWith(Parameterized.class)
public class TestForm1ParameterizedSeleniumKursFirefox2 {
WebDriver driver;
String username;
String password;
String betreff;
String name;
String kursTitel;
int[] firmenBox1;
int[] firmenBox2;
String assert1;
String assert2;
// Konstruktor
public TestForm1ParameterizedSeleniumKursFirefox2(String testName, String username, String password, String betreff, String name,
String kursTitel, int[] firmenBox1, int[] firmenBox2, String assert1, String assert2) {
this.username = username;
this.password = password;
this.betreff = betreff;
this.name = name;
this.kursTitel = kursTitel;
this.firmenBox1 = firmenBox1;
this.firmenBox2 = firmenBox2;
this.assert1 = assert1;
this.assert2 = assert2;
}
@Before
public void setUp() throws Exception {
System.out.println("+++ Initialisiere Webdriver");
System.setProperty("webdriver.gecko.driver", "./drivers/geckodriver.exe");
driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.get("https://zurtesthomepagefürdastutorial.de");
}
@After
public void tearDown() throws Exception {
System.out.println("+++ Test abgeschlossen. Aufräumen.");
driver.close();
}
@Test
public void testForm1() {
System.out.println("+++ Starte Test Form 1 Testseite");
// Arrange
// Login
System.out.println("+++ Login Name PW Button");
SeleniumKursLoginPage loginPage = new SeleniumKursLoginPage(driver);
loginPage.zugangsdatenEingeben(username, password);
loginPage.loginButtonAnklicken();
// Navigation zum Formular
System.out.println("+++ Navigation");
SeleniumKursHomePage homePage = new SeleniumKursHomePage(driver);
homePage.menuAusklappen();
homePage.seleniumTestAppLinkAnklicken();
SeleniumKursTestApplikationenPage testAppPage = new SeleniumKursTestApplikationenPage(driver);
testAppPage.testForm1anklicken();
// Starte Formular
System.out.println("+++ Start Formularbearbeitung / Eingaben / Auswahl");
SeleniumKursTestForm1Page testForm1Page = new SeleniumKursTestForm1Page(driver);
System.out.println("+++ Betreff eingeben");
testForm1Page.betreffEingeben(betreff);
System.out.println("+++ Name eingeben");
testForm1Page.nameEingeben(name);
System.out.println("+++ Kurs auswählen");
testForm1Page.kursAuswaehlen(kursTitel);
// Select selectAuswahl1 = new Select(driver.findElement(By.id("form-widgets-auswahl1")));
// selectAuswahl1.selectByVisibleText("Java Grundlagen Kurs mit Dieter");
System.out.println("+++ Firma Box 1 auswählen");
testForm1Page.firmaInBox1Auswaehlen(firmenBox1);
System.out.println("+++ Firmenauswahl übernehmen");
testForm1Page.firmenUebernehmen();
System.out.println("+++ Firma in Box 2 auswählen");
testForm1Page.firmaInBox2Auswaehlen(firmenBox2);
System.out.println("+++ Auswgewählte Firmen nach oben verschieben");
testForm1Page.ausgewählteFirmenNachObenVerschieben();
// Act
System.out.println("+++ Button Speichern");
testForm1Page.formularSpeichern();
// Assert
System.out.println("+++ Status auslesen");
String erfolgsMeldung = testForm1Page.statusMeldungAuslesen();
System.out.println("+++ Status assert");
System.out.println("+++ Ausgabe Status assert: " + erfolgsMeldung);
assertTrue(erfolgsMeldung.contains(assert1));
System.out.println("+++ Erstes Listenelement auslesen");
String erstesElement = testForm1Page.erstesListenElementAuslesen();
System.out.println("+++ Erstes Listenelement assert");
assertEquals(erstesElement, assert2); // Magazzini Alimentari Riuniti
System.out.println("+++ Ausgabe: " + erstesElement);
}
@Parameters(name = "{0}")
public static Collection<Object[]> provideTestData() throws Exception{
Collection<Object[]> collection;
Object[][] daten = {
{"Test Form 1 Test 1 Firefox", "einWort1", "nocheinWort1", "Parametrisierter Test", "Dieter",
"Java Grundlagen Kurs mit Dieter", new int[] {2,4,6}, new int[] {2}, "Java Grundlagen Kurs",
"Magazzini Alimentari Riuniti"},
{"Test Form 1 Test 2 Firefox", "einWort2", "nocheinWort2", "Parametrisierter Test", "Miriam",
"Python Grundlagen Kurs mit Dieter", new int[] {2,3,4,6}, new int[] {2}, "Python Grundlagen Kurs",
"Magazzini Alimentari Riuniti"}
};
List<Object[]> listObjects = Arrays.asList(daten);
collection = new ArrayList<Object[]>(listObjects);
return collection;
}
}
Es geht um diese Zeile (oben Zeile 139):
Java:
@Parameters(name = "{0}")
Die zugehörige Fehlermeldung:
"The attribute name is undefined for the annotation type Parameterized.Parameters"
und
"Link all references for a local rename (does not change references in other files)"
Hier fehlt mir definitiv Javaverständnis. Was ist da gemeint, was muss ich machen? Im Tutorial steht es genau so und es läuft dort.
Vielen Dank schon mal vorab und viele Grüße!