Giới thiệu selenium webdriver và appium

Selenium là một công cụ mã nguồn mở để kiểm thử các ứng dụng web trên các trình duyệt khác nhau (Chrome, IE, FF, …) và hệ điều hành khác nhau (Mac, Windows, Ubuntu …)

Appium là một công cụ mã nguồn mở được sử dụng để kiểm thử tự động (test automation) các ứng dụng native, ứng dụng hybrid và úng dụng web trên nền tảng iOS và Android.
Để kiểm thử được các ứng dụng trên nền tảng iOS và Android, ta có thể kết hợp giữa selenium webdriver và appium. Do appium rất gần với công cụ kiểm tra phần mềm selenium webdrive, nên sẽ rất dễ dàng để tìm hiểu appium nếu bạn đã biết selenium webdriver.
Appium hỗ trợ cho nhiều ngôn ngữ như:Java, Objective-C, JavaScript với node.js, PHP, Ruby, Python, C #,…

Cơ chế hoạt động của Appium cũng khá đơn giản, Appium được hiểu đơn giản như một con server giúp cho testscript viết bằng selenium có thể chạy được trên device, như hình bên dưới đây device là thiết bị chạy hệ điều hành Android.

Trong bài viết này mình sẽ hướng dẫn các bạn cài đặt Appium và các thư viện liên quan để có thể viết testscript và chạy kiểm thử tự động trên một ứng dụng Android.

Cài đặt Appium và Android Studio

1. Cài đặt Appium
1.1. Tải gói Selenium WebDriver Jar

Link download: http://docs.seleniumhq.org/download/
Gói jar sau khi download sẽ được dùng để add vào thư viện trên Android sudio

1.2. Tải gói Appium Java Client

Link download: https://search.maven.org/#search%7Cga%7C1%7Cg%3Aio.appium%20a%3Ajava-client
Gói jar sau khi download sẽ được dùng để add vào thư viện trên Android sudio

1.3. Cài đăt Appium Server:
Các bạn vào tải file cài đặt appium server theo link tải này http://appium.io/, sau đó tiến hành cài đặt, bước này cũng rất đơn giản 😉

Sau khi cài đặt thành công, các bạn mở ứng dụng Appium vừa cài đặt lên và cấu hình cho appium server như sau:
Ở tab Android Settings (button thứ nhất từ trái sang):

  • Chọn Platform Name = "Android"
  • Chọn Automation Name = "Appium"
  • Chọn PlatformVersion = Phiên bản hệ điều hành của thiết bị Android được kết nối. Như trong ví dụ là 4.2

Ở tab General Settings (button thứ 2 từ trái sang):

  • Cần cấu hình Server address và Port number cho server appium tương ứng là 127.0.0.1 và 4723, lát nữa các bạn sẽ viết nó trong code script test.
  • Bỏ chọn ở checkbox "Pre-Launch Application" nếu nó được chọn.

2. Cài đặt môi trường viết testscript
Ở đây chúng ta viết testscript bằng Java chạy cho ứng dụng android, vì vậy mình sử dụng IDE là Android Studio được Google suggest dùng thay cho Eclipse hay Netbean,… bởi hơn hết bạn không phải quan tâm cài đặt Android SDK nữa bởi nó đã được tích hợp sẵn rồi.

2.1. Cài đặt JDK
Trước tiên yêu cầu phải có Java JDK (Java Software Development Kit), các bạn hãy vào link download jdk của oracle để tải bản mới nhất về và sau đó cài đặt nhé.
Link download: http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html

2.2. Cài đặt Android Studio
Android Studio cài đặt cũng khá đơn giản, bạn vào link download bên dưới tải bản Android Studio tương ứng cho hệ điều hành của mình về rồi cài đặt bản Standard là xong.
Link download: https://developer.android.com/studio/index.html#downloads

Viết chương trình test trên Android Studio

  • Step 1: Tạo project android trên Android Studio
  • Step 2. Add thư viện Appium vào project
  • Step 3: Cài đặt TestNG trên Android Studio
  • Step 4: Kết nối máy android với máy tính
  • Step 5: Chuẩn bị file test .apk
  • Step 6: Viết test scrip
  • Step 7: Start Appium
  • Step 8: Thực hiện chạy testscript
  • Step 9: Đọc report kết quả test

1. Tạo project android trên Android Studio

  • Mở android studio và bắt đầu tạo mới project android để bắt tay vào viết các trường hợp kiểm thử

    Nhập tên App và Package sau đó nhấn Next

    Tiếp tục nhấp Next

    Chọn "Empty Activity" và nhấn Next

    Bạn có thể chỉnh sửa tên Activity tùy ý ở đây và sau đó nhấp vào Finish

    Bây giờ dự án đầu tiên của bạn đã được tạo ra, đến bước add thư viện của Selenium và Appium vào project mình vừa tạo ra nhé.

2. Add thư viện Appium vào project
Ở bước này bạn hãy add 2 gói jar đã download ở mục 1.1- Selenium WebDriver Jar và 1.2- Appium Java Client vào project vừa tạo. Đơn giản bạn chỉ cần làm như sau:

  • Click chuột vào tên project -> click vào tên app
  • Copy cả 2 file jars và paste vào app
  • Sau đó click chuột phải vào 2 file jars vừa chép vào và chọn "Add as Library"
    Như vậy bạn đã add xong thư viện Appium cho dự án test.

3. Cài đặt TestNG trên Android Studio
Click vào file "build.gradle" trong app, bạn sẽ thấy tất cả các libs bạn đã add như bên dưới.
Bây giờ bạn cần add thêm thư viện TestNG vào, bạn hãy copy đoạn code dưới đây và paste vào "build.gradle".

4. Kết nối máy android với máy tính
Để có thể test ứng dụng trên máy android , bạn cần kết nối may android với máy tính. Đầu tiên hãy bật chế độ USB debugging trên điện thoại.

Sau đó sử dụng cable để kết nối máy android với máy tính.
Bạn có thể kiểm tra kết nối và lấy deviceName bằng cách: Mở cửa sổ cmd, gõ “adb devices” bạn sẽ thấy hiển thị tên devices


Như các bạn thấy thì ở đây máy tính đã nhận device test của mình với tên là "0217da38" và device này đang dùng android version 5.0.1.

5. Chuẩn bị file test .apk
Chúng ta đang cần test ứng dụng android native, vì vậy các bạn cần có sẵn file cài đặt ứng dụng (file apk) để có thể tiến hành test. File này các bạn có thể yêu cầu bên đội dev build cho mình. Sau đó bạn lưu nó vào thư mục app trong project.
Ngoài ra bạn cần lấy một số thông tin liên quan đến app cần test để chuẩn bị cho viết test script, gồm có: Pachage name, Activity name. Thông tin này có thể yêu càu đội dev gửi luôn cho hoặc các bạn lấy thông tin này như sau:

  • Mở thư mục C:Users[username]AppDataLocalAndroidandroid-sdkbuild-tools
  • Chọn một thư mục để mở. Ví dụ 23.0.1
  • Giữ chuột trong thư mục đó, ấn Shifl + chuột phải -> Chọn “Open command window here”
  • Gõ dòng lệnh “aapt list -a D:AutomationMobileAutomationMobileSTCvn.com.misa.sothuchi.apk >manifest.txt” => nó sẽ sinh ra một file manifest.txt trong cùng thư mục đó.
  • Mở file manifest.txt. Bạn sẽ tìm thấy packageName
  • Và tìm thấy activityName (Activity đầu tiên)

Trên đây các bạn đã cài đặt được các công cụ và thư viện cần thiết để có thể bắt tay vào viết test script, ở bài viết sau mình sẽ tiếp tục hướng dẫn phần còn lại để các bạn có thể viết test script và áp dụng nó trong các dự án test android.

Nguồn tham khảo:
http://appium.io/
http://www.software-testing-tutorials-automation.com/2015/09/how-to-download-and-install-appium-in.html