Mirki, napisałem bota do gierki przeglądarkowej w #selenium i #csharp, działa mi teraz na jednym serwerze ale chciałbym poszerzyć flotę do kilku innych, w jaki sposób najlepiej to rozwiązać, by np. bot chodził na kilku serwerach jednocześnie? może być całkowicie inna technologia, język itp.
potrzebuję: obsługa klikania, wczytywania danych ze strony i drag&drop.
z uwagi na ilość serwerów raczej już preferowałbym uruchomienie bez okien, jakieś pomysły?
#
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Hej Mirki mam problem , mam napisany projekt w java do testowania Strony Za pomocą Selenium , Mam kilka przycisków o tym samym id i chciałbym alby program automatycznie wyszukiwał je wszystkie i klikał je , Jak to zrobić ?? :/
#selenium #java #testowanie
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Pobieram kod html ze strony za pomocą pythona i selenium pewnego diva przy użyciu innerHTML.
Wyskakuje lista stringów w formacie

Afdsfsdfs
Agfgdgdf
Bfgdsfd
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Cześć. Mam taki problem: będę miał dużą bazę tekstów w wordzie (całkiem dobrze formatowane - oznaczone: tytuł, lead, treść) i chciałbym je przerzucić do cms-a jakoś automatem, żeby nie przeklejać tego jak małpka.
Raczej nie mam szansy na dostęp do api itd. więc pytanie brzmi jak to ogarnąć.
Jakieś #selenium czy coś podobnego?
Ogarniam w miarę pythona więc ... #python
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirki dziewczyna chce nauczyć się testów automatycznych - selenium (java). Podstawy już ogarnia ale chce się bardziej rozwinąć.
Czy znacie jakąś porządną stronkę - teoria + przykłady? Albo jakaś strona z zadaniami (i z odpowiedziami)?
Albo namiary na książkę?

#testowanieoprogramowania #selenium #java
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Wyrzuca mi blad attribute error Y object has no attribute find element by tag name


@Kura_Wasylisa: jeśli zarówno klasa bazowa X jak i klasa pochodna Y nie udostępniają atrybutu find_element_by_tag_name, no to nie ma co się dziwić rzucanemu wyjątkowi.
  • Odpowiedz
Cześć Mirki (i Mirabelki też!). Ostatnio zostałem pojechany za to, że stworzyłem Dockerfile biorąc jako postawowy obraz zwykłe ubuntu i dorzuciłem tam pythona, pip'a, selenium, xvfb, chroma i firefoxa i że taki image waży 1GB i hur dur tak się nie robi. Znalazłem na Docker Hub też podobne zestawienie i zajmowało nawet więcej kiedy się ściągnęło na dysk :D
Teraz takie pytanie, jakie są dobre praktyki tworzenia testów automatycznych i wrzucania je
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 0
@WilsonWilsonWilson sens jest taki że się ze sobą nie gryzą i możesz je mieć w tuzinie wersji jak jest potrzeba. Bo jeden kontener ze wszystkim też możesz uruchamiać na tuzinie komputerów i puszczać równolegle
  • Odpowiedz
Pytanie do #testowanieoprogramowania Czy można w #testng #selenium #java zrobić takie coś, że jak zakończę test np otworzę jakąś stronę, żeby mi napisało w xmlu czy tam w podsumowaniu testu, że "strona została otwarta, test OK"
Ja to sobie wymyśliłem tak:
if (driver.findElement(By.xpath.......).isDisplayed()) { I tu jakiś tekst dla testng}

Wiecie o co chodzi. W sumie nie wiem co napisać bo otwiera się strona
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Cześć, na stronie javastart.pl pojawił się kurs automatyzacji testów z wykorzystaniem Selenium. Link. Przedstawione rozdziały wydają się interesujące i rzeczowe. Czy ktoś z Was korzysta z tego kursu i może przedstawić swoją opinię?
#selenium #webdriver #java #kurs
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Czy ktoś z Was korzysta z tego kursu i może przedstawić swoją opinię?


@krjakubowski: Używamy w zespole Selenium. Nauczyliśmy się go sami. Trwało to ~miesiąc (ale równolegle z innymi taskami) My - tzn. dwóch QA engineerów plus support ze strony developerów backend+frontend. No nie wiem czy jest sens wydawać kasę na ten kurs.
edit: no nie no żebym zniechęcał do kursu. Jak ktoś jest totalnie zielony w temacie to pewnie
  • Odpowiedz
Cześć,
piszę sobie automaty w #puppeteer w firmie dla apki angularowej, ale że na to ofert szukać to jak igły w stogu siana to wracam prywatnie do selenium. Polećcie jakąś stronkę którą można sobie zautomatyzować aby zrobić z tego portfolio na gitice.
Podejrzewam, że niedługo może się przydać ( ͡° ͜ʖ ͡°)
#selenium #testowanieoprogramowania
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Kodziak: A o jakim poziomie mówimy? Bo jeśli nie mówimy o niczym zaawansowanym to mogę Ci udostępnić moją apkę. Będziesz w stanie postawić sobie na kompie i będziesz miał pewność, że apka nie padnie w połowie.

Tylko nie jest szczególnie rozbudowana, ale masz:
- kilka formularzy
- są zależne od siebie (to co podasz w jednym wpływa na to, co masz w drugim)
- pola tekstowe, komentarze, checkboxy,
  • Odpowiedz
Mam cholerny problem z kliknięciem jednego elementu. W konsoli przeglądarki ustawiam odpowiedni iframe i próbuję kliknąć poniższy element, ale kompletnie mi to nie wychodzi:


Poniższa metoda bez problemu odnajduje szukany element:
$x("//*[contains(@id,'card_0')]")
lub
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Krunhy:
1. Kod wklejaj w paste bin albo w podobne rozwiązanie ;)

2. Jeśli nie wyrzuca Ci błędu i nie dzieje się akcja, która powinna się dziać to najbardziej oczywistym rozwiązaniem jest to, że wcale nie klikasz tego, co chcesz. Sprawdź więc 10 razy czy xpath jest poprawny, czy na pewno jest tylko jeden taki element i czy to na pewno ten element wyzwala jakąś akcję.
Zamiast 'click' zaloguj gdzieś tekst z
  • Odpowiedz
Mireczki, poszukuję porad od doświadczonych testerów #testowanie #testowanieoprogramowania na start drogi z testowaniem automatycznym.





Z jakich materiałów korzystać na początek przygody z testowaniem automatycznym? Nie chodzi mi o materiały stricte do poznania #selenium, bo to ogarniam już w miarę dobrze(a jak nie ogarniam, to znajduję na stackoverflow), a bardziej takie materiały, które uczą dobrych praktyk - jak prawidłowo układać testy, co
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@andriyj: przechodziłam przez to niedawno i ze złotych rad to tak :
- nie unikniesz ciągłego refactoru i 15000 zmian koncepcji, na tym się uczysz i nabijasz doświadczenie w tym co jest najlepsze w przypadku twojego projektu
- wymyśl sobie jak będziesz mapował wymagania do testów - czy w strukturze folderów/nazw plików/opisach testów (coverage matrix) bo któregoś dnia przyjdzie PM i zapyta "czy to wymaganie sprzed pół roku ma test
  • Odpowiedz
@andriyj: chyba wybiegasz za daleko w swojej sytuacji.

1. Nie przejmuj sie clean codem, refaktoryzacją i optymalizacją. Niech to zacznie działać, a na refaktoryzacje przyjdzie czas.
2. Clean code polecam, polecam tez książkę o TDD (jak wrócę do domu to mogę pożyczyć .mobi ;))
3. Masz w projekcie developerów którzy ogarniają pythona? Może oni zrobią Ci code review?
4. Jakby co, to chętnie pomogę w code review i pytaniach (i ludzie na grupie testowanie
  • Odpowiedz
Jak najlepiej i najdokładniej zmierzyć ładowanie się strony. Chce sprawdzić ile wynosi czas między kliknięciem przycisku na stronie a załadowaniem się kolejnej podstrony.

Na razie zrobiłem to w taki sposób że przed kliknięciem sprawdzam obecny czas. Klikam przycisk, podstrona się ładuję. Następnie sprawdzam który ma się załadować na podstronie się załadował. Jeżeli tak to znowu obieram obecny czas do innej zmiennej. Następnie odejmuje jeden czas od drugiego. Nie jestem pewien czy to
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@PiotrokeJ: Selenium to narzędzie do testów funkcjonalnych, więc prawdopodobnie średnio się sprawdzi w takim testowaniu wydajności. Są do tego inne narzędzia. Z drugiej strony, jeśli dasz odpowiedni expected condition przy tym czekaniu na element widoczny po przeładowaniu, to raczej powinno być miarodajnie:)
  • Odpowiedz
@Kermii: Możesz na upartego otwierać electronową apke ChromeDriverem z binary_location. Kiedyś się tym bawiłem ale nie daje głowy czy to będzie rozsądnie działało.
  • Odpowiedz
Mam pewien problem piszę sobie prostego clickera w selenium i chciałbym aby po otwarciu nowego okna kliknął konkretny przycisk, który znajduje się w nowym oknie. Problem w tym że program nie może znaleźć tego guzika ponieważ mimo że zmieniam okno instrukcją switchTo().Window(newWindowHandle) to wciąż szuka elementu w starym oknie. Co trzeba zrobić by program szukał po nowym oknie?
#programowanie #testowanieoprogramowania #selenium #dotnet #csharp
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Siema mirki, muszę zautomatyzować logowanie do pewnej gry i wybieranie postaci w selenium. Problem polega na tym, że gdy chcę wyszukać element po id, lub chociażby po klasie to dostaję wyjątek, że go nie ma.

selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: [id="charlist"]
standardowo używam webdriver.Firefox().findelementby_id("charlist"), jednak nie odnajduje mi tego elementu mimo, że w przeglądarce siedzi.
#python #selenium #naukaprogramowania
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@TMBRK:
Zwykle rozwiązanie tego problemu jest jedno:
1. Nie ma wcale elementu o takim ID. Nie ma go jeszcze/literówka/pojawia się dopiero jak coś zrobisz, itp.
2. Element znajduje się w jakimś iFrame - w takiej sytuacji jest on niewidoczny dla selenium póki nie przełączysz się do tego iFrame. Robisz to poleceniem:
switch_to_frame(find_element_by...) - i podajesz odniesienie do ifame.
  • Odpowiedz
Zastanawiam się nad jedną rzeczą odnośnie Webdrivera. Czy taki wzorzec jak fluent page object pattern da się zaimplementować w pythonowych testach, albo czy warto?
Dotychczas spotkałem się tylko z przykładami w Javie i bardzo fajnie wygląda to "chainowanie" metod i asercji.
#selenium #testowanieoprogramowania
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Fristo: Wlaśnie sobie czytam na ten temat. Technicznie nie widzę przeszkód aby to zaimplementować i nie powinno się w żaden sposób kłócić z żadnym wzorcem budowania testów automatycznych w pythonie. Smiało wdrażaj jeśli podoba Ci się to :)

Jedynie z doświadczenia mogę Ci powiedzieć, że częściej w projektach dążyliśmy do zbudowania frameworka tak, aby obsługiwać metodami całościowo większość przypadków. Bardzo rzadko więc była potrzeba by na jednym obiekcie wywołać więcej
  • Odpowiedz
To szukasz debuggera, nie loggera. To właśnie debugger pozwala Ci na przykład zatrzymanie testu w odpowiednim miejscu, podejrzenie wartości dowolnej zmiennej jaką chcesz, możesz nawet zmienić wartość czegokolwiek i puścić test dalej.

Sam najwięcej korzystałem z Pycharmowego debuggera oraz z ipdb. Oba rozwiązania były w pełni wystarczające do moich potrzeb.
@Fristo:
  • Odpowiedz