קורס אוטומציה - חינם !!!

Selenium WebDriver
onLineCourseWebDriver_driverConnections

לפני הופעת סלניום WebDriver אנשי האוטומציה הסתפקו בגרסתו המוקדמת יותר שנקראה – Selenium Remote Control אשר חייב את המשתמשים להתקין שרת Java שידבר עם הדפדפנים השונים (נקרא Selenium RC Server)
ה-WebDriver הביא איתו שינוי תשתיתי שזנח את אותו חיבור לשרת והביא לנו את היכולת לעבוד ישירות מל הדפדפנים בעזרת דרייברים. חיבור מסוג זה שיפר את ה-Performance של ההרצות בזכות העבודה הישירה, מה שנקרא – Cut the middle man.
הדרייברים הללו הם למעשה ממשק תכנותי המספק API עם יכולות ה-Object Oriented . בסלניום לכל דפדפן יש את הדרייבר שלו לנוכח העובדה שלכל דפדפן יש מנוע Java Script שונה (בין היתר).
בפרוייקט ה-Selenium יש תמיכה בדפדפנים שונים וביניהם: כרום, פיירפוקס, אינטרנט אקספלורר, אדג', ספארי , HTMLUnitDriver שעובד כ- Headless Browser , ועוד
את המבנה ההירארכי של המחלקות \ ממשקים ניתן לראות בפוסט שלנו: Inside Selenium WebDriver.


עבודה מול דפדפן הכרום

דפדפן הכרום הוא הדפדפן הפופולרי ביותר לבדיקות עם Selenium , בכדיי לעבוד עם דפדפן הכרום נצטרך להוריד תחילה את הדרייבר שלו כפי שראינו בפרק 1 - התקנה , ובקוד שלנו להגדיר לו היכן הכרום-דרייבר יושב במערכת הקבצים שלנו במחשב, וליצור לו אובייקט (לאובייקט הזה נקרא - driver):


import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

System.setProperty("webdriver.chrome.driver", "C:/Selenium/Drivers/chromedriver.exe");
WebDriver driver = new ChromeDriver();


 

כאמור, בשורה הראשונה אנו מגדירים היכן הכרום דרייבר יושב במערכת הקבצים ובשורת הפקודה הבאה אני מייצר אובייקט driver שהוא מוגדר להיות מסוג ChromeDriver
דרך נוספת בה ניתן לעבוד מול דפדפן הכרום ניתן למצוא בפוסט: הטסט הראשון שלי : Selenium WebDriver C#/Chrome


עבודה מול דפדפן הפיירפוקס

במידה ונרצה לעבוד עם דפדפן הפיירפוקס עם סלניום, נצטרך להוריד תחילה את ה-GeckoDriver מכאן: https://github.com/mozilla/geckodriver/releases (ראו פרטים בפרק 1).
מבחינת הקוד עצמו, אופן הקריאה לפתיחת דפדן הפיירפוקס דומה מאוד למה שראינו כבר כשקראנו לכרום , גם כאן אנחנו נגדיר את הנתיב של ה-GeckoDriver שיושב במערכת הקבצים שלנו וכאן אנחנו נקרא לבנאי של FireFoxDriver:


import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

System.setProperty("webdriver.gecko.driver", "C:/Selenium/Drivers/geckodriver.exe");
WebDriver driver = new FirefoxDriver();


עבודה מול דפדפן האינטרנט אקספלורר

לעבודה עם אינטרנט אקספלורר, אנו נוריד מבעוד מועד את הדרייבר של אקספלורר , הוא נקרא: IE Server (ניתן להוריד אותו מכאן: https://goo.gl/QDTbrU)
וכרגיל, בקוד שלנו אנו נקרא לו באותו האופן כמו שקראנו לשאר הדפדפנים ע"י הקוד הבא:


import org.openqa.selenium.WebDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;

System.setProperty("webdriver.ie.driver", "C:/Selenium/Drivers/IEDriverServer.exe");
WebDriver driver = new InternetExplorerDriverDriver();


עבודה מול דפדפן הספארי

בשביל לעבוד עם ספארי נצטרך להגדיר לפני כן דבר או שניים, תחילה יש להוריד תוסף לדפדפן של הספארי, את התוסף הזה נוריד מכאן: http://selenium-release.storage.googleapis.com/index.html
כעת ניכנס לדפדפן, נלך להגדרות ומשם ל-Extenstion ונסמן ב-V את האופציה: Enable Wendriver.
הקוד שלנו יראה כך:


import org.openqa.selenium.WebDriver;
import org.openqa.selenium.safari.SafariDriver;

WebDriver driver = new SafariDriver();

 

סרטון הדרכה - חיבור לדפדפנים: