Mireczki #testowanieoprogramowania #qa ale nie tylko, widzieliście na githubie przykład projektu, wyrzystującego #java #cucumber i #selenium?

Chcę zacząć robić projekt na swojego gita, ale mam problem z odpowiednim połączeniem wszystkich tych plików, tak żeby nauczyć się dobrych wzorców. Może być też jakiś tutorial, oglądnęłam kilka na yt ale raczej słabo.

Bardzo proszę o wskazanie jakiegoś źródła.
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Chcę zacząć robić projekt na swojego gita, ale mam problem z odpowiednim połączeniem wszystkich tych plików, tak żeby nauczyć się dobrych wzorców. Może być też jakiś tutorial, oglądnęłam kilka na yt ale raczej słabo.


@Melisandre
Nie ma jedynego odpowiedniego połączenia, o ile mówisz o strukturze projektu, co projekt to pewnie inaczej to wygląda, na tej stronie jest dobrze ułożona struktura projektu:
https://medium.com/agile-vision/cucumber-bdd-part-2-creating-a-sample-java-project-with-cucumber-testng-and-maven-127a1053c180
  • Odpowiedz
@Kermii: Sensownym wprowadzeniem na Udemy jest "Selenium WebDriver With Java - Novice To Ninja + Interview". Niestety cierpi na częstą przypadłość kursów na Udemy, czyli trochę za dużo przeciągania.
  • Odpowiedz
Mirki od #qa #testowanieoprogramowania #selenium #java #testowanie

Mam taki problem - uczę się Selenium z Javą i mam jednen problem. Mianowicie mam kalkulator do testowania, który wyrzuca zmienną wartość w okienku po każdej operacji wykonanej na kalkulatorze. Macie może jakieś opcje co by porównać wynik?

Powiedzmy chcę zrobić działanie 2+2 > wynik
i później sprawdzić czy ten wynik to 4, jeśli tak to return
  • 30
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mireczki!
Mam napisanego bota w NodeJS przy użyciu puppeteer, ale chciałem go przepisać na python.
Mam problem, bo muszę zaakceptować, nie wyłączyć czy coś tylko zaakceptować powiadomienie push, coś w stylu >Strona xxx chce wysyłać ci powiadomienia
czy jakoś tak to jest w chrome, w firefox to się chyba nazywa web push.
Nie mam pojęcia jak to zrobić, w puppeteer nie ma takiej opcji, a co z selenium i pythonem?

#
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

spróbuj switcha --disable-desktop-notifications ustawionego na false, domyślnie jest true i blokuje wszystkie powiadomienia
  • Odpowiedz
Czołem, chciałbym bardziej rozwinąć się w kierunku testów automatycznym, głównie selenium + java, co polecacie na początek? Od czego zacząć?

Może "java for tester"? Później selenium z guru99?

#testowanieoprogramowania #selenium
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@swemi01: Zacznij od pisania testów w Selenium + java. Serio, po prostu ściągnij Intellij, ogarnij środowisko i zacznij pisać testy. Jak nie wiesz jaką stronę automatyzować, to pisz skrypty na Allegro czy innym Wykopie
  • Odpowiedz
@kotoj:
Osobiście preferuję XPath selectory, bo są dla mnie czytelniejsze, przyjemniej się je pisze. No i mają trochę większe możliwosci (xpath functions), których nie ma w css selektorach bądź zupełnie mi się nie podobają.
Przykładowo zdecydowanie wolę korzystać z 'starts-with niż odpowiednika w css selektorze, który jest jednym znakiem (^), ale przez to widywałem sytuacje, kiedy było 'Dlaczego ten selektor znajduje element, chociaż nie powinien?', bo ktoś ten jeden znaczek przeoczył.
W
  • Odpowiedz
W kwestii wydajności też mogę bronić xpathów. Ponad dwa lata temu sam to mierzyłem. Napisałem prostą stronę, wrzuciłem na serwer, napisałem odpowiednio xpathy i css selektorzy, zapuściłem testy w pętli i po godzinie sprawdziłem wyniki. Xpathy okazały się wolniejsze o ok. 2-3%


Może to był właśnie błąd, taki sam jaki popełnił autor na blogu: http://elementalselenium.com/tips/34-xpath-vs-css-revisited-2

Dopiero za trzecim razem napisał odpowiednie testy.
  • Odpowiedz
Mirki, chcę napisać skrypt do prostej gry przeglądarkowej, by "grał" za mnie.
Zrobiłem to już w C# w Selenium ale rzekomo w JavaScript jest o wiele łatwiej. Problem tego typu, że jestem zielony w JS.
O czym radzicie mi poczytać, słowa kluczowe w Google? Lub może jakiś prosty przykład kodu klikania w jakiś przycisk w JS na wykopie?

#javascript #jquery #csharp #selenium #programowanie
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirki, mam pytanie dwa pytania co do pracy na Selenium w C#:

(1) Jak przenieść element na stronie www? Drag&Drop jakiś?
Google póki co niespecjalnie pomogło.

(2) Mam taki kod jak na obrazku i chcę, by Drag&Drop przenosił tylko przedmioty z wartością taką jak zaznaczoną w ramce, jak do nich dotrzeć? Mówię tu nich, bo jest ich ~50 i tworzenie kodu sprawdzającego czy nadal istnieje + wklejanie konkretnych ścieżek byłoby katorgą. :/
sobczii - Mirki, mam pytanie dwa pytania co do pracy na Selenium w C#:

(1) Jak prz...

źródło: comment_KyYLq59BlIarEDMDPaywibV94kf7HU8I.jpg

Pobierz
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@sobczii:

Jak przenieść element na stronie www? Drag&Drop jakiś? Google póki co niespecjalnie pomogło.


Ciekawe. Mi wpisanie selenium drag and drop c# w google zwróciło wiele rezultatów. Pierwszy z brzegu, potwierdzony przez pytającego, że taka odpowiedź
  • Odpowiedz
przeglądałem te tematy :/ nie znajduje mi "Actions" co robię źle w takim razie?


@sobczii: Obstawiam, ze nie importujesz ;)

ale kopiuję gotowce dzięki dodatkowi do Firefoxa i on ogranicza się do jednego elementu tylko


@sobczii: Używając gotowców sprawiasz, że wystarczy delikatna zmiana w strukturze strony i całość może Ci się rozsypać jak domek z kart.
  • Odpowiedz
@asunez: tylko, że nie mogłem użyć tego, żeby poczekał. ze względu na to, że skakał po stronach skrypt i nie na każdej dany element był. i ten "kwiatek" przydał mi się, fakt faktem zastąpiłem go potem innym rozwiązaniem, bo wyglądało tardowo :D
  • Odpowiedz
Mireczki proszę o poradę odnośnie #selenium i #testowanieoprogramowania.

Piszę testy logowania. Po przejściu na landingPage wchodzę w logowanie i wyświetla się modal z danymi do wpisania.
I tutaj pojawia się problem, ponieważ Selenium nie widzi go. Dostaję cały czas błąd: Element not visible.
Próbowałam:
1. zmieniać lokatory na różne sposoby, za każdym razem to
  • 35
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Melisandre: Jednak popatrzenie w HTML pomogło. Problemem jest to, że ta strona zawiera dwa formularze logowania, przy czym pierwszy z nich jest zawsze na stronie, tylko z atrybutem CSS: display: none; więc się nie wyświetla. Po kliknięciu na "Login" do drzewa DOM doklejany jest kolejny formularz, tyle, że tym razem już widoczny i to na nim chcemy operować. Tyle, że elementy w obu formularzach są identyczne więc szukając jednego z
  • Odpowiedz
@LiczbaPi: Tak, nie napisałem że to dobry selektor - Twój jest lepszy.
A co konsoli, można wklejać gotowe selektory w pole szukania - przynajmniej w Chrome w zakładce Elements
  • Odpowiedz
Mireczki proszę o poradę w sprawie jak poprawnie podzielić strukturę testów w #selenium #testowanieoprogramowania

Czy każdy test (np. loginTest, registerTest) to powinien być oddzielny plik? Czy może lepszym wyjściem jest stworzenie pliku testLandingPage w którym umieszczonych będzie kilka testów (logowania, przechodzenia do podstron itp.)?

Jeszcze dodatkowe pytanie jaką stosujecie konwencję nazewnictwa przy nadawaniu nazw plikom testowym? testDupa a może test_d--a?
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Czy wiedzieliście, że na wp jak się wejdzie w artykuł na stronie głównej i "zalajkuje", albo da kciuka w dół komentarz, a potem wyjdzie z artykułu i wróci, to znowu można oddać głos na komentarz?

Ja nie wiedziałem, ale fajnie mi się ta informacja zgrała z powtórką #selenium więc:
STO LAT PANIE JACKU he he he ( ͡° ͜ʖ ͡
m.....3 - Czy wiedzieliście, że na wp jak się wejdzie w artykuł na stronie głównej i ...

źródło: comment_71vi6I58WDao8hvYsInB6XwI0rlZsdQG.jpg

Pobierz
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@max1983: no to chyba odkryliśmy skąd się biorą te plusowane wpisy np. pod #polityka na wp:

while true; do curl -i -X POST [https://liveblog.wp.pl/api/v1/newsfeed/6208566059006081/comments/6209066048333441/like](https://liveblog.wp.pl/api/v1/newsfeed/6208566059006081/comments/6209066048333441/like) -H 'accept-encoding: gzip, deflate, br' ; sleep 1; done
dziękuję, dobranoc ( ͡° ͜ʖ ͡°)

edit: a dla odważnych sleep 0 ( ͡° ͜ʖ ͡°)
  • Odpowiedz
Czy istnieje możliwość dostania się do sesji i uzyskaniu zalogowanego użytkownika? Mam JSONa w sesji pod kluczem "user" i chciałbym go odczytać podczas testów Selenium, i na Firefox i na Chrome podłączonych przez driver.remote.

#programowanie #python #selenium
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

No elo testerskie świry!

Zacząłem pisać skrypty w Selenium (java) i napotkałem się na taki problem podczas automatyzcji rejestracji użytkownika:

udaje mi się normalnie zarejestrować i odczytać maila. Kiedy klikam w hiperłącze potwierdzający adres email, selenium nie zaczyna analizować strony, do której hiperłącze prowadzi, tylko dalej siedzi na gmail'u.

Jak
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@buntuubuntu: @damianbeat:
Rozwiązanie z otwieraniem nowego okna nie jest najlepsze. Drugie okno powinno być otwierane tylko jeśli jest taka konieczność.
W tym przypadku zamiast klikać na link to skopiuj sobie ten odnośnik i wejdź po prostu na tę stronę poprzez .get(url)

Po drugie - co masz na myśli, że selenium nie czeka na załadowanie strony. Oczywiście, że czeka. Tylko że po załadowaniu się strony różne elementy wcale nie muszą
  • Odpowiedz
Cześć, mam nadzieję, że ktoś podpowie w czym może być problem, bo już rwe włosy z głowy. Mam projekt z użyciem biblioteki Selenium, wszystko pięknie działa. Jakakolwiek zmiana przy ustawieniach WebDrivera, np. zmiana ChromeDriver na FirefoxDriver, lub dodanie jakiejś opcji powoduje, że albo wszystko działa, albo pojawia się następujący błąd, który zwraca Glassfish:

"Caused by: java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)"

Nawet cofnięcie zmian np. ctrl + z do działającej wersji skutkuje, że i tak nie działa poprawnie.
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kr0kus_: @ppawel: brakująca metoda to zazwyczaj wina złej wersji biblioteki - i tak na pewno tak jest. Chyba guava, i jej zła wersja z jakiegoś powodu, nie używam glassfish więc trudno mi pomóc więcej. Nie wiem czy to ma jakiś osobny folder z bibliotekami, czy każda apka ma własne - ale na pewno coś gdzieś trzeba zaktualizować.
  • Odpowiedz
@kr0kus_: no właśnie rzecz w tym, że "aplikacja" odpalająca testy wcale nie musi być aplikacją webową (o ile ktoś nie wymyślił szalonego interfejsu webowego do uruchamiania testów), skoro już używamy Javy to najczyściej to chyba je mieć jako kod testowy wykorzystujący JUnit albo TestNG - w "src/test/java" a nie produkcyjny z "src/main/java" (a odpalanie testów pozostawić temu, kto zrobi jak należy "mvn clean test", ewentualnie to samo wywoływane przez Jenkinsa)
  • Odpowiedz