2012-03-21 12 views
5

Używam wtyczki Selenium IDE Firefox do tworzenia niektórych przypadków testowych. Klikam przycisk Nagraj, aby nagrać kroki. Kiedy skończę, przestanę nagrywać i będę uruchamiał przypadki testowe, żeby zobaczyć, jak się sprawy mają. W tym jednym konkretnym elemencie w tabeli HTML Selenium identyfikuje się jako id=my_id_1 w procesie nagrywania; kiedy uruchomię przypadek testowy, powiedziałbym, że Elementu nie znaleziono.Element Selenium Nie znaleziono, nawet jeśli Seleni wypełnia identyfikator

Jak nie można go znaleźć po wykryciu ID w Selenum IDE? Jak mogę obejść ten problem? Próbowałem również używać //tr[4]/td[3]/a. Korzystając z tego podejścia (i używając ID również), po kliknięciu przycisku Znajdź w IDE, odpowiedni element na stronie internetowej zostanie podświetlony na żółto. Jednak przypadek testowy nie powiedzie się, że element nie może znaleźć znaleziony.

Dzięki z góry, Monte

+0

Czy upewniłeś się, że polecenie nie zostanie wykonane przed załadowaniem tabeli na stronę? –

Odpowiedz

7

Wypróbuj pauzę przed poleceniem problemu, aby sprawdzić, czy nie została całkowicie załadowana, zanim Selenium spróbuje znaleźć element. Jeśli to rozwiąże problem, zamiast tego możesz zastąpić pauzę bardziej niezawodnym warunkiem oczekiwania.

+0

Dziękuję bardzo. Zrobiłem ClickAndWait w komendzie przed tą, o której mowa, i to wystarczyło. –

+1

+1, miałem ten sam problem i dodanie pauzy rozwiązało problem. – Tim

0

nie może być przypadek, że jesteś przekierowany do innej strony przed wykonaniem tego polecenia, dzięki czemu stają się elementem nie znaleziono błąd, można umieścić pauzę przed wykonaniem rozkazu, lub jeśli nie jest to przypadek, spróbuj zlokalizować element po nazwie, wartości lub ścieżce Xpath zamiast ID

-1

uruchom test w trybie wolnym od IDE.

0

Może to być tworzenie nowego identyfikatora za każdym razem. Dlatego możesz podać wyrażenie regularne, takie jak to, którego użyłem poniżej.

//form[@id='adminLogin']/div/div[4]/input 

Wypróbuj. To działa dla mnie.

Powiązane problemy