stale_element_exp

מהו – Stale Element Reference Exception ?

הפעם אנחנו הולכים לדבר על Exception בסלניום. ולא סתם Exception אלא אחד כזה שהוא קשה לתפיסה הבנתית. אנחנו מדברים על – Stale Element Reference Exception.

המשמעות של המילה Stale היא – רקוב או פג תוקף , בדיוק כמו במקרה המדובר כאן בבדיקות שלנו. האלמנט אותו אנחנו רוצים לתפוס כבר לא בתוקף.

מה זאת אומרת לא בתוקף ? זה אומר שאחד משני המקרים התבצעו:

1. האלמנט נמחק מה-DOM

2. האלמנט אינו מקושר יותר ל-DOM

 

זה הרי ידוע שניתן בעזרת פקודות JavaScript בסיסיות להעלים \ לשנות \ למחוק אלמנטים מה-DOM , אז בואו ניקח מקרה לדוגמא בו תפסנו אלמנט בהתחלה ע”י :

 

אח”כ ביצענו כל מיני פעולות על הדף כחלק מהבדיקה שלנו, ואחת מהן גרמה (ע”י פונקציה ב-JS כאמור) למחוק את האלמנט מה-DOM , או לחילופין – במסגרת הבדיקה היינו צריכים לנווט לעמוד אחר באפליקציה. אח”כ קראנו שוב פעם לאלמנט , תוך הפעלת פעולה מסויימת עליו:

 

במקרה כזה, האובייקט שלנו: test מסוג WebElement – אותו איתחלנו בתחילת הבדיקה , כעת לא בתוקף (כי הוא למשל נמחק מהדף) , וכשאנו מפעילים עליו את הפעולה click , התוכנית תנסה לחפש אותו ותזרוק לנו את ה-Stale Element Reference Exception.

בדרך כלל, זהו לא Exception תדיר, אך שימו לב כי אם אתם עובדים על דפים עשירים בקוד JS או JQuery – התופעה יכולה לקרות

 

Exception-Reporting

 

לקריאה נוספת אודות Stale Element Reference Exception:

http://www.seleniumhq.org/exceptions/stale_element_reference.jsp

 

כתיבת תגובה

האימייל לא יוצג באתר. (*) שדות חובה מסומנים

היי, אני לא רובוט *

תגי HTML מותרים: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">