Selenium چیست؟
مقدمه
Selenium یک فایل اجرایی (EXE) است که برای تست و خودکارسازی مرورگرهای وب مورد استفاده قرار میگیرد. این ابزار متنباز به توسعهدهندگان و تستکنندگان نرمافزار کمک میکند تا برنامههای وب را بدون نیاز به انجام تستهای دستی بررسی کنند. Selenium با زبانهای برنامهنویسی مختلفی مانند Python، Java، C#، JavaScript و Ruby سازگار است و میتواند تعاملات کاربر با مرورگر را شبیهسازی کند.
چرا selenium؟
- متنباز و رایگان: Selenium یک ابزار رایگان است که توسط جامعه متنباز پشتیبانی میشود.
- پشتیبانی از چندین مرورگر: این ابزار با مرورگرهایی مانند Chrome، Firefox، Edge و Safari کار میکند.
- سازگاری با سیستمعاملهای مختلف: میتوان آن را روی ویندوز، مک و لینوکس اجرا کرد.
- پشتیبانی از چندین زبان برنامهنویسی: امکان استفاده از Selenium با زبانهای مختلف فراهم است.
- امکان اجرای تستهای همزمان: با استفاده از Selenium Grid میتوان تستها را روی چندین مرورگر و سیستم اجرا کرد.
مولفه های Selenium
- Selenium WebDriver: یک API قدرتمند برای کنترل مرورگرها و اجرای تستهای خودکار.
- Selenium IDE: افزونهای برای مرورگرهای Firefox و Chrome که امکان ضبط و اجرای تستها را فراهم میکند.
- Selenium Grid: ابزاری برای اجرای تستها روی چندین سیستم و مرورگر بهطور همزمان.
کاربردهای هر مولفه در ویندوز
-
Selenium WebDriver:
- WebDriver ابزاری مستقل برای کنترل مرورگرها از طریق زبانهای برنامهنویسی مانند Python، Java و C# است.
- برای استفاده، ابتدا باید WebDriver متناسب با مرورگر (مثلاً ChromeDriver) دانلود و پیکربندی شود.
-
Selenium IDE:
- Selenium IDE یک افزونه برای مرورگرهای Chrome و Firefox است که کاربران را قادر میسازد تا تستهای خودکار را ضبط و اجرا کنند.
- این ابزار نیازی به کدنویسی ندارد اما نسبت به WebDriver امکانات محدودتری دارد.
-
Selenium Grid:
- Selenium Grid امکان اجرای تستهای خودکار را در محیطهای توزیعشده و روی چندین مرورگر بهطور همزمان فراهم میکند.
- برای استفاده از آن در ویندوز، نیاز به راهاندازی یک سرور مرکزی و نودهای مربوطه دارید که از طریق اجرای یک فایل JAR مدیریت میشود.
نصب و پیکربندی Selenium در ویندوز
۱. نصب Python (در صورت نیاز)
- به وبسایت رسمی Python مراجعه کرده و آخرین نسخه را دانلود و نصب کنید.
- پس از نصب، صحت نصب را با اجرای دستور زیر بررسی کنید:
اجرای دستور در CMD :
python --version
۲. نصب Selenium از طریق pip
- در CMD یا PowerShell دستور زیر را اجرا کنید:
pip install selenium
- برای نصب نسخه خاصی از Selenium:
pip install selenium=4.10.0
۳. دانلود و تنظیم WebDriver (مثلاً ChromeDriver)
- به سایت رسمی ChromeDriver مراجعه کرده و نسخه متناسب با مرورگر خود را دانلود کنید.
- فایل اجرایی را در مسیر پروژه یا مسیر سیستمی (C:\Windows\System32) قرار دهید.
۴. تنظیم متغیرهای محیطی (در صورت نیاز)
- مسیر chromedriver.exe را بهPATH اضافه کنید تا از هر دایرکتوری قابل اجرا باشد.
۵. اجرای تست Selenium در CMD
- یک فایل test.py ایجاد کرده و کد زیر را در آن قرار دهید:
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get("https://www.google.com")
search_box = driver.find_element(By.NAME, "q")
search_box.send_keys("Selenium WebDriver")
search_box.submit()
driver.quit()

- دستور فعال سازی محیط selenium در CMD
cd selenium_project
python -m venv venv
venv\Scripts\activate

- سپس فایل را با دستور زیر اجرا کنید:
python test.py
۶. راهاندازی Selenium Grid در ویندوز
- ابتدا Selenium Server را دانلود کنید:
wget https://github.com/SeleniumHQ/selenium/releases/download/selenium-4.10.0/selenium-server-4.10.0.jar
- سپس سرور Grid را با دستور زیر اجرا کنید:
java -jar selenium-server-4.10.0.jar standalone
- اکنون میتوانید تستهای خود را بهصورت توزیعشده روی چندین مرورگر اجرا کنید.
ویژگیهای کلیدی Selenium
- کنترل عناصر DOM: امکان یافتن عناصر با استفاده از ID، کلاس، نام، XPath و CSS Selector.
- شبیهسازی تعاملات کاربری: امکان اجرای رویدادهایی مانند کلیک، اسکرول، پر کردن فرمها و ارسال کلیدها.
- مدیریت پنجرهها و تبها: قابلیت تغییر تبها، بستن پنجرهها و تغییر اندازه آنها.
- مدیریت کوکیها و نشستها: امکان خواندن و نوشتن کوکیها برای تستهای پیشرفته.
- انتظارهای هوشمند (Implicit و Explicit Waits): امکان تنظیم تاخیرهای پویا برای بارگذاری عناصر.
- اجرای تستهای توزیعشده: قابلیت اجرای تستها روی چندین مرورگر بهطور همزمان با Selenium Grid.
- گرفتن اسکرینشات از تستها: امکان ثبت وضعیت صفحه در طول اجرای تست.
قصد تهیه هاست دارید؟ میتوانید از طریق آتناهاست اقدام کنید. جهت کسب اطلاعات بیشتر از طریق راههای ارتباطی با ما تماس بگیرید.
سرور اختصاصی
سرور مجازی
میزبانی سرور
هاست
هاست لینوکس ایران
هاست Nodjs
هاست وردپرس ایران
هاست حجمی
کلاس آنلاین
گواهی نامه امنیتی
خدمات فضای ابری
عضویت
ورود