Skip to content
Automation FC Blog
Automation FC Blog

Roadmap to Become an Automation Test Engineer

  • Knowledge
  • Selenium
  • Framework
  • Tips
  • Course
  • Event
  • About
  • Copyright
Automation FC Blog

Roadmap to Become an Automation Test Engineer

02/08/201824/11/2022

Cài đặt/ cấu hình Selenium Java và Eclipse (MAC OS)

Nội dung bài viết

  • 1 Java Development Kit (JDK)
  • 2 Eclipse IDE
  • 3 Selenium
  • 4 Project
  • 5 Libraries
  • 6 TestNG Runner
  • 7 ChromeDriver
  • 8 Run Test

Nếu các bạn muốn setup môi trường Selenium trên hệ điều hành Windows hoặc Linux thì xem qua 2 bài viết này:

  • Cài đặt/ cấu hình Selenium Java và Eclipse (Windows OS)
  • Cài đặt/ cấu hình Selenium Java và Eclipse (Ubuntu Linux)

Java Development Kit (JDK)

  • Dùng bản Java version 1.8 trở lên
    • Download trên trang chủ: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
    • Nếu các bạn ngại đăng kí tài khoản trên Oracle thì tải file cài đặt Offline: https://drive.google.com/drive/folders/19ZoFJfRquNBbyeiUjzKE_FyqHzrHJV1h 
    • Trong này đã để sẵn các file Offline: Java/ Eclipse/ Firefox/ Selenium/ Git SCM
  • Sau khi tải về -> cài đặt bình thường -> Click Next -> Install cho đến khi hoàn tất
  • Sau khi cài đặt xong bật command line (cmd) kiểm tra version đã cài đặt thành công
    • java -version

Eclipse IDE

  • Link download: https://www.eclipse.org/downloads/packages/release, tùy vào hệ thống của bạn phiên bản 32/64 bit để lựa chọn cho phù hợp
  • Bản 2020-03 là bản mới nhất tại thời điểm hiện tại – chọn bản Eclipse IDE for Java Developer là đáp ứng đủ cho nhu cầu công việc

  • Click đúp vào file .dmg mới tải về – sau đó kéo thả Eclipse vào thư mục Application

  • Click đúp vào Eclipse app trong thư mục Application để start Eclipse lên

  • Để mặc định và bấm vào check box bên dưới để lần sau popup ko hiện lên
    • eclipse-workspace: là thư mục lưu trữ các setting của Eclipse và các dự án đang làm việc

Selenium

  • Sử dụng bản 2.53.1 vì ổn định cho newbie học và thực hành (update theo hướng dẫn sau nếu cần dùng version mới nhất)
  • Link download: http://selenium-release.storage.googleapis.com/index.html?path=2.53/
  • Chọn và tải: selenium-server-standalone-2.53.1.jar

Project

  • Tạo mới Project: File > New > Java Project > [Đặt tên Project] > Finish
    • Project name: selenium-api-java-testng

  • Tạo mới Package: Click chuột phải vào thư mục src > New > Package > [Đặt tên Package] >Finish
    • Package name: automationfc

  • Tạo mới Class: Click chuột phải vào Package > New > Class > [Đặt tên Class] > Finish
    • Class name: Topic_01_Check_Environment

Libraries

  • Tạo mới 1 thư mục trong project để lưu trữ các thư viện java hoặc driver của các loại browser cần dùng
    • Đặt tên thư mục là libraries

  • Copy thư viện selenium-server-standalone-2.53.1.jar dán vào thư mục libraries

  • Click chuột phải vào thư viện và Add vào Build Path

TestNG Runner

  • Chọn Help > Install New Software

  • Nhập:
    • Name = TestNG
    • Location = https://testng.org/testng-eclipse-update-site/6.14.3/
    • Click Add

  • Click vào Select All và nhấn Next button

  • Click “I accept the terms of the license agreement” và nhấn Finish button

  • Nếu hiện ra 1 popup thông báo về Security Warning, nhấn Install anyway để tiếp tục

  • Click Restart Now để khởi động lại Eclipse

ChromeDriver

  • Kiểm tra version của chrome browser – gõ lên thanh address: chrome://version

  • Tải về đúng version của chromedriver qua link sau: https://chromedriver.storage.googleapis.com/index.html

  • Chọn bản chromedriver cho MAC

  • Xả nén và copy file chromedriver vào thư mục libraries
  • Set permission cho file chromedriver
    • Click chuột phải vào file chromedriver chọn Properties
    • Check vào quyền Execute

Run Test

  • Copy và paste đoạn code phía dưới vào class “Topic_01_Check_Environment” đã tạo
package webdriver;

import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.Assert;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

public class Topic_01_Check_Environment_Latest {
    WebDriver driver;
    String projectPath = System.getProperty("user.dir");
    String osName = System.getProperty("os.name");

    @BeforeClass
    public void beforeClass() {
        if (osName.contains("Mac OS")) {
            System.setProperty("webdriver.gecko.driver", projectPath + "/browserDrivers/geckodriver");
        } else {
            System.setProperty("webdriver.gecko.driver", projectPath + "\\browserDrivers\\geckodriver.exe");
        }

        driver = new FirefoxDriver();
        driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
        driver.manage().window().maximize();
        driver.get("https://www.facebook.com/");
    }

    @Test
    public void TC_01_ValidateCurrentUrl() {
        // Login Page Url matching
        String loginPageUrl = driver.getCurrentUrl();
        Assert.assertEquals(loginPageUrl, "https://www.facebook.com/");
    }

    @Test
    public void TC_02_ValidatePageTitle() {
        // Login Page title
        String loginPageTitle = driver.getTitle();
        Assert.assertEquals(loginPageTitle, "Facebook – log in or sign up");
    }

    @Test
    public void TC_03_LoginFormDisplayed() {
        // Login form displayed
        Assert.assertTrue(driver.findElement(By.xpath("//form[@data-testid='royal_login_form']")).isDisplayed());
    }

    @AfterClass
    public void afterClass() {
        driver.quit();
    }
}
  • Run testcase
    • Click chuột phải vào Class test chọn Run As > TestNG Test
  • Kết quả sau khi run pass

Selenium selenium-java-macselenium-java-macos

Post navigation

Previous post
Next post

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Archives

  • December 2022 (1)
  • August 2021 (1)
  • April 2020 (1)
  • February 2020 (3)
  • October 2018 (5)
  • September 2018 (6)
  • August 2018 (8)
  • October 2017 (1)
  • December 2016 (1)
  • May 2016 (1)
  • March 2016 (1)
©2023 Automation FC Blog | WordPress Theme by SuperbThemes