בפוסט זה אציג כמה טיפים וטריקים המטפלים בחיפוש וזיהוי של אלמנטים לא טריוויאלים. שיטות לחיפוש שעד כה לא הצגנו.

חיפוש מילה בעמוד:

לא קיימת מתודה בסלנים של – verifyTextPresent , לכן אם נרצה לבצע זאת, נצטרך להשתמש ב-getPageSource , כך:

public boolean verifyTextPresent(String text)
{
   return driver.getPageSource().contains(text);
}

או כך:

public boolean verifyTextPresent(String text)
{
   return driver.findElement(By.tagName("body")).getText().contains(text);
}

 



מציאת אובייקט:

public boolean isObjExists(WebDriver driver, By locator)
    {
        try
        {
            WebDriverWait wait = new WebDriverWait(driver,Max_TimeOut);  // wait הגדרת אובייקט
            wait.until(ExpectedConditions.elementToBeClickable(locator));
            return true;  // true אם מצא את האובייקט תחזיר
        }
        catch(NoSuchElementException exception)
        {           
            return false;  // תחזיר תשובה שלילית exception אם הגיע ל
        }
       
    }

 



מציאת קואורדינטות:

מציאת הקואורדינטות של אלמנט מסויים על המסך , נעשה שימוש בדוגמא של צילום מסך חלקי בשיעור 15

public void getCoordinates() throws Exception
{
     WebElement Image = driver.findElement(By.id("myID"));
        
     Point point = Image.getLocation();  // point למציאת הקואורדינטות נעזר במחלקת
     int xcord = point.getX();
     System.out.println("Element's Position from left side Is "+xcord +" pixels.");
     int ycord = point.getY();
     System.out.println("Element's Position from top side Is "+ycord +" pixels.");
 }

והפלט יהיה משהו בסגנון הזה:

Element's Position from left side Is 135 pixels.
Element's Position from top side Is 409 pixels.

 



מציאת מימדים:

מציאת המימדים של אלמנט מסויים על המסך (לרוב תמונה) , נעשה שימוש בדוגמא של צילום מסך חלקי בשיעור 15

public void getSize() throws Exception
{
     WebElement Image = driver.findElement(By.id("myID"));
        
     int ImageWidth = Image.getSize().getWidth();   // מציאת מימד הרוחב של האלמנט
     System.out.println("Image width Is "+ImageWidth+" pixels");
        
     int ImageHeight = Image.getSize().getHeight();       // מציאת מימד האורך של האלמנט
     System.out.println("Image height Is "+ImageHeight+" pixels");
}

והפלט יהיה משהו בסגנון הזה:

Image width Is 450 pixels
Image height Is 155 pixels.

 



מציאת אלמנט לפי אח:

מציאת אלמנטים לפי המיקום שלהם זה תהליך לא כל כך מסובך, אך לעיתים אנו נצטרך למצוא את האלמנטים לפי אלמנט אחר שממוקם בצמוד אליהם (אח). בואו קודם נביט בטבלה:


המשחק כאן הוא למעשה משחק ב-XPath כך שבעזרתו נגדיר את האלמנט על פי זיהוי האחים.

זיהוי לפי אח שבא לפני האלמנט הרצוי (במקרה שלנו checkbox):

//td[contains(text(),'Green')]/following-sibling::td/input[@type='checkbox']

אנו רואים כי //td[contains(text(),'Green')] יזהה את התא בו רשום dog , ואח"כ /following-sibling יזהה לפי האח שלאחר ה-node הנוכחי ולבסוף: td/input[@type='checkbox'] יזהה את האלמנט הרצוי (ה-checkbox).

 

זיהוי לפי אח שבא אחרי האלמנט הרצוי (במקרה שלנו checkbox):

//td[contains(text(),'Yellow')]/preceding-sibling::td/input[@type='checkbox']

 

 


arrowBackarrowMainarrowFor

השאר הערה\הודעה