Zapisy otwarte! Dołącz do kursu Selenium w Javie lub Selenium w C#. Tylko do 23.09.2021 do godz. 21:00. Zapisz się tutaj.

Selenium 51. Zadanie: listy rozwijane

Czas przećwiczyć to, co przerobiliśmy wspólnie na ostatnim filmie, czyli listy rozwijane (dropdown). Przed Tobą zadanie, w którym skorzystasz z poznanego rozwiązania i użyjesz go do zaznaczenia elementów na liście.

Na początku filmu tłumaczę polecenie, a następnie rozwiązanie. Będzie moment żeby zatrzymać film na czas wykonania zadania – dam znać w filmie kiedy.

Polecenie do zadania

Ukryta treść

Nie masz dostępu do tego kursu. Wykup dostęp albo zaloguj się, by móc zobaczyć pełną lekcję.

Wsparcie merytoryczne

Nie masz dostępu do wsparcia merytorycznego dla tego kursu. Wykup dostęp albo zaloguj się, by móc zadawać pytania.

  1. get(0) w poniższych liniach świeci mi się na czerwono i nie mogę puścić testu. Po kropce nie podpowiada mi się możliwość wybrania samego get().
    WebElement orderBy = driver.findElement(By.cssSelector("select[name='orderby']")).get(0);
    WebElement firstPriceElement = driver.findElement(By.cssSelector("span.price")).get(0);

    Dopiero po usunięciu get(0) przechodzą testy
    Jak to naprawić jeśli przykładowo chciałabym wybrać drugi element zamiast pierwszego i potrzebowałabym użyć get(1)?

    Odpowiedz
  2. Hej ! Mam pytanie, czy mogę w tym zadaniu użyć takiego selektora do odnalezienia tej ceny? Czy nie utrudniłem tego niepotrzebnie?

    @Test
    public void priceOrderDescTest() {
    WebElement productCategories = driver.findElement(By.cssSelector(".orderby"));
    Select categoriesDropdown = new Select(productCategories);
    categoriesDropdown.selectByIndex(5);
    
    String firstPriceElement = driver.findElement(By.cssSelector("ul[class*='products columns-3'] span:first-child")).getText();
    Assertions.assertEquals("5 399,00 zł", firstPriceElement, "First price is not the highest price.");
    }
    Odpowiedz
  3. Cześć! A czy podpowiedziałabyś jak zaimplementować klasę Random by móc losowo wybrać filtr z listy rozwijanej?

      @Test
        public void dropDownlistExcercise() {
    
           WebElement dropdownElement = driver.findElements(By.cssSelector("select.orderby")).get(0);
           Select sortingFilter = new Select(dropdownElement);
           sortingFilter.selectByIndex(2);
    
    Odpowiedz