ממשק נוסף שנלמד בשיעור זה של סלניום הוא עם מחלקת ה-Robot . מחלקה זו היא מחלקת של ג'אווה והיא יודעת לדמות פעולות של משתמש דרך המקלדת. איך זה עוזר לנו ?

בשיעור 8 – מעבר בין חלונות הצגתי בעיה המראה את המוגבלות של סלניום Webdriver לעבודה על חלונות הדפדפן בלבד. בואו ניקח דוגמא בה אני רוצה לשמור קובץ תמונה מאתר מסויים למחשב שלי, נגיד את התמונה של הלוגו באתר הנוכחי למחשב. באופן ידני אקיש על המקש הימני של העכבר לפתיחת תפריט העזר ו- Save image As

 

כעת יפתח לי חלון windows (אשר סלניום אינו יודע לעבוד עימו) ובו אצטרך לבחור את הנתיב ושם הקובץ לשמירה

 

באופן ידני אוכל להכניס את הנתיב המדוייק אליו ארצה לשמור את הקובץ, אך איך אוכל לעשות זאת באופן אוטומטי עם סלניום ? אחד מהפתרונות הוא שימוש ב-Robot Class. בואו נראה איך עושים זאת.

 

אז דבר ראשון נצטרך להקליק עם המקש הימני של העכבר ולבחור את האופציה Save Image As , מכיוון שתפריט זה הוא חלק מהדפדפן אין לנו בעיה "לאכול" אותו עם ה-Webdriver.

WebElement Image = driver.findElement(By.cssSelector("img[alt='logo']"));

Actions action= new Actions(driver);
action.contextClick(Image).build().perform();  // לחיצה על המקש הימני עם פעולת אקשן

כעת נבחר את האופציה של Save Image As:

action.sendKeys(Keys.CONTROL, "v").build().perform();   // לחיצה על קונטרול ווי תבחר לנו את האופציה שרצינו

חלון הwindows לשמירת התמונה אמור להיפתח כעת, נפעיל עליו פונקציית KeyPress ממחלקת ה-Robot, בדוגמא שלנו, נכניס את הנתיב: C:\Test

* רוצים לראות את המשך הפוסט ? צרו עימי קשר ונקבע פגישה לקורס פרונטלי

 


arrowBackarrowMainarrowFor

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