12/08/2018, 15:52

Tìm hiểu về Selendroid (Phần 1)

Selendroid là một test automation framework cho nhiều loại ứng dụng trên mobile như: native android and hybrid android và mobile web. Do Selendroid được xây dựng trên Selenium nên bạn cũng có thể sử dụng trực tiếp Selenium 2 client APIs để test . Selendroid là một tool đa năng, có thể sử ...

Selendroid là một test automation framework cho nhiều loại ứng dụng trên mobile như: native android and hybrid android và mobile web.

Do Selendroid được xây dựng trên Selenium nên bạn cũng có thể sử dụng trực tiếp Selenium 2 client APIs để test . Selendroid là một tool đa năng, có thể sử dụng để test với thiết bị giả lập (emulator) và device thật

Hiện nay có khá nhiều tool test automation cho ứng dụng android, vậy tại sao bạn nên dùng Selendroid? Hãy xem các tính năng của Selendroid được trình bày dưới đây:

  • Bạn có thể kiểm thử ứng dụng mà không cần bất cứ một sự sửa đổi nào trên app của mình. Bạn chỉ cần build file APK và cài đặt trên thiết bị test.
  • Selendroid có thể sử dụng đề test đồng thời với nhiều loại device thật và thiết bị giả lập (simulator). Đây là một trong những thế mạnh của Selendroid.
  • Selendroid có thể giả lập human-user action (tương tác của con người) trên app như là touch, swipe, drag and drop
  • Bạn có thể tự do thay đổi hardware devices (như là Plug and unplug) mà không cần stop hay restart kịch bản test đang chạy. Selendroid sẽ tự động phát hiện được thiết bị mới mà không cần bất kì thao tác nào của tester.
  • Support các version Android API từ API 10 đến API 19
  • Selendroid còn có các tool để check inspector, giúp tìm và kiểu tra các UI element như ID of button, text field, text view…

Selendroid được base trên Android instrumentation framework. Selendroid test được viết dựa trên Selendroid Web driver client API nên support đầy đủ cho các tích hợp của Selenium framework

Hinh minh họa dưới đây giúp bạn hiểu rõ hơn về kiến trúc của Selendroid:

Selendroid bao gồm 4 component chính:

  • Web Driver Client – Java client library based trên Selenium. Đây là thư viện của của Selenium được cài trên máy tính để tạo test case
  • Selendroid-Server – Selendroid-Server được chạy dưới thiết bị test, đây là thành phần chính trong Selendroid architecture.
  • Android Driver-App - bản built Android driver, Web View app để test
  • Selendroid-Standalone – Dùng để cài đặt Selendroid server và ứng dụng test.

Sau khi tìm hiểu những thông tin quan trọng nhất về Selendroid, hãy cùng tìm hiểu cách sử dụng tool này theo các bước dưới đây:

4.1 Set up môi trường

Selendroid có thể sử dụng trên Window, Linux và Mac OS. Tutorial này sẽ hướng dẫn các bạn cài đặt trên hệ điều hành Window.

Trước khi sử dụng Selendroid, bạn cần cài đặt các package sau:

  1. Java SDK (minimum 1.6): download về máy và cài đặt như những phần mềm bình thường khác
  2. Version mới nhất của Android SDK
  3. Android Virtual Device (AVD) hoặc device Android được kết nối với PC
  4. Selendroid Standalone with dependencies, Selendroid Client và Selenium Client
  5. Eclipse software
  6. Set up the JAVA_HOME và ANDROID_HOME

Step 1)

Trên Window, right click Computer -> Properties -> Advance System Setting

Step 2)

Cửa sổ System Properties hiển thị, select tab Advanced -> Environment Variables

Step 3)

Cửa sổ Environment hiển thị, click New -> Enter a variable ANDROID_HOME như dưới đây The variable value là đường dẫn android-sdks mà bạn đã cài đặt. Vào Path -> Edit -> Add Tương tự như ANDROID_HOME, thêm JAVA_HOME là đường dẫn Java JDK installation

Step 4)

Restart PC -> Done

4.2 Launch Selendroid

Step 1)

Bạn có thể sử dụng một app có tên là "Selendroid test app" để học cách sử dụng Selendroid. Link app: link Sau khi download thành công, copy file APK và thư mục lưu trữ Selendroid Standalone jar file ở trên sang một folder mới có tên là "Guru99"

Step 2)

Launch the Selendroid Mở terminal trên Windows và chuyển hướng đến folder Guru99 đã tạo ở step 1 bằng cách chạy câu lệnh sau: Output sẽ như sau: Sau khi chạy câu lệnh trên, selendroid-standalone http server sẽ được khởi động. Default port number cho server trên là 4444. Tất cả phần cứng device như là máy ảo android sẽ được quét và nhận ra một các tự động. Selendroid sẽ xác định version của hệ điều hành android và kích thước màn hình trên thiết bị Để kiểm tra version Android target cũng như thông tin device, bạn có thể launch theo URL dưới đây trên browser: http://localhost:4444/wd/hub/status.

4.3 Các câu lệnh cơ bản

Phần dưới đây sẽ giới thiệu các câu lệnh cơ bản nhất hay dùng trong Selendroid

4.3.1. Thiết lập cổng (port)

Default port của Selendroid là 4444 nhưng bạn cũng có thể thay đổi sang port khác bằng cách thêm một parameter như câu lệnh dưới đây: Parameter: -port [port number] Ví dụ: để chuyển sang port 5555 ta dùng câu lệnh sau: Sau khi chạy câu lệnh trên, đường dẫn (URL) để kiểm tra Android target version như đã giới thiệu ở trên được thay đổi thành: http://localhost:5555/wd/hub/status

4.3.2. Chỉ định file APK

Dùng để test ta dùng câu lệnh sau: Parameter: -app [file path] Ví dụ: Để Selendroid tự động tìm đến file APK lưu tại "C:Guru99App.apk" ta dùng câu lệnh như sau: Kiểm tra URL http://localhost:4444/wd/hub/status bạn sẽ xem được thông tin như sau:

4.3.3. Thay đổi timeout

Parameter: -timeoutEmulatorStart Mặc định Selendroid sẽ đợi khoảng 300,000 milisencond cho đến khi emulator start. Bạn có thể thay đổi timeout thành 200,000 ms bằng câu lệnh dưới đây:

4.3.4. Thay đổi log type

Parameter: -logLevel [type of log] Log level bao gồm các giá trị sau: ERROR, WARNING, INFO, DEBUG and VERBOSE. Mặc định là ERROR.
Ví dụ bạn muốn Selendroid chỉ print WARNING log, bạn có thể sử dụng câu lệnh sau:

Trên đây là giới thiệu tổng quan và hướng dẫn cài đặt Selendroid, phần 2 của bài viết sẽ hướng chi tiết từng bước để kiểm thử một ứng dụng andorid bằng Selendroid, mời các bạn đón đọc tiếp trong tháng sau.

Nguồn: https://www.guru99.com/introduction-to-selendroid.html

0