Kiểm thử phần mềm là một công việc đầy thách thức. Do đó, việc sử dụng các công cụ hỗ trợ kiểm thử phần mềm sẽ cải thiện hiệu suất của đội ngũ phát triển. Đặc biệt nếu bạn đang tìm cách để kiểm thử giao diện người dùng (UI) trên các thiết bị di động hoặc các ứng dụng như Native, Hybrid, thì Appium sẽ là một lựa chọn hoàn hảo cho bạn. Vậy Appium là gì? Đặc điểm của Appium và cách cài đặt Appium như thế nào? Tất cả sẽ được giải đáp trong bài viết dưới đây của Wiki Lanit!
Appium là gì?
Appium là một công cụ kiểm thử tự động mã nguồn mở chuyên dành cho ứng dụng Native, Mobile Web app hay Hybrid app trên cả Android và iOS, và điều đáng nói là nó hoàn toàn miễn phí!
Bên cạnh việc hỗ trợ kiểm thử phần mềm trên các nền tảng (simulator/emulator), Appium còn giúp bạn kiểm thử trực tiếp trên các thiết bị thực tế (physical device). Appium được phát triển dựa trên nền tảng Selenium, cho phép nó kế thừa tất cả các đối tượng (object), cấu trúc và cú pháp của Selenium. Do đó Appium hoạt động đa nhiệm và đa nền tảng, bạn có thể sử dụng cùng một API để kiểm thử phần mềm trên nhiều nền tảng khác nhau. Điều này giúp giảm thiểu thời gian cấu hình và xây dựng các bộ kiểm thử riêng biệt cho từng nền tảng.
Các thành phần cấu tạo Appium
Appium Server (Máy chủ Appium): Appium Server là một chương trình máy chủ được xây dựng bằng Java, được sử dụng để tạo một môi trường chuyển đổi các lệnh từ mã kiểm thử thành các lệnh có thể tương tác với các phần tử trên giao diện người dùng. Bộ phận này có nhiệm vụ giúp thực hiện kiểm thử tự động trên ứng dụng di động đối với nền tảng iOS (sử dụng UIAutomation) và Android (sử dụng UIAutomator).
Thư viện Appium: Tương tự như Selenium, Appium đi kèm với một hệ thống thư viện giúp nhận diện và tương tác với các UI. Hệ thống thư viện Appium được hỗ trợ bởi nhiều ngôn ngữ lập trình khác nhau, bao gồm C#, Java, Python… Điều này cho phép kỹ sư kiểm thử tự động lựa chọn ngôn ngữ lập trình mà có thể thoải mái thực hiện trên ứng dụng di động.
Các thành phần cấu tạo Appium
Ứng dụng Appium được thiết kế nhằm đáp ứng mọi nhu cầu kiểm thử các phần mềm trên thiết bị di động theo các triết lý sau:
- Việc tự động hóa ứng dụng không đòi hỏi sự thay đổi hay sửa đổi mã nguồn ứng dụng của mình.
- Bạn không bị ràng buộc bởi ngôn ngữ lập trình hoặc framework cụ thể để viết test case hoặc chạy phần mềm.
- Một khung làm việc tự động hóa ứng dụng di động không nên lặp lại công việc đã có sẵn nếu muốn trở thành một API tự động.
- Khung làm việc tự động hóa ứng dụng di động mã nguồn mở, không chỉ trong tên mà còn trên tinh thần và thực tế.
Do đó Appium rất đáng sử dụng bởi phần mềm được hỗ trợ đa ngôn ngữ, nền tảng. Kiểm thử các ứng dụng vô cùng đơn giản nhất là đối với các ứng dụng hay được bổ sung hay có chức năng mới.
Bảng so sánh giữa Appium và các phần mềm kiểm thử khác
Tiêu Chí | Appium | Robotium | UIAutomator | Espresso | Calabash |
Hỗ trợ nền tảng | iOS, Android | Android | Android | Android | iOS, Android |
Ngôn ngữ lập trình | nhiều ngôn ngữ C#, Java, Python,… | Java | Java | Java | Ruby, Cucumber |
Ứng dụng Native | Có | Có | Có | Có | Có |
Ứng dụng Hybrid | Có | Có | Có | Có | Có |
Ứng dụng Web | Có | Không có | Không có | Có | Có |
Hỗ trợ thiết bị thật | Có | Không có | Có | Có | Có |
Điểm mạnh | – Hỗ trợ cả iOS và Android. – Hỗ trợ ứng dụng Native, Hybrid, và Web. | – Dễ học và triển khai. – Hỗ trợ kiểm thử ứng dụng Android. | – Hỗ trợ kiểm thử ứng dụng Android. – Tương thích với Android API. | – Tốc độ chạy nhanh. – Hỗ trợ kiểm thử ứng dụng Android. | – Hỗ trợ kiểm thử trên cả iOS và Android. -Ngôn ngữ Ruby. |
Điểm yếu | – Yêu cầu thiết lập môi trường phức tạp. – Khó học hơn so với một số công cụ khác. | – Chỉ hỗ trợ Android. – Không hỗ trợ ứng dụng iOS. | – Chỉ hỗ trợ Android. – Không hỗ trợ ứng dụng iOS. | – Chỉ hỗ trợ Android. – Tương thích với tùy phiên bản Android. | – Sử dụng ngôn ngữ Ruby có thể khó với một số người dùng. |
Độ phổ biến | Rất phổ biến | Phổ biến | Phổ biến | Phổ biến | Không phổ biến |
Appium quả thực là phần mềm kiểm thử uy tín được nhiều người tin dùng, tuy vậy phần mềm vẫn có một số mặt hạn chế như:
- Ứng dụng hoạt động trên iOS còn chậm, chưa thực sự tốt.
- Không áp dụng cho các phiên bản Android thấp dưới 4.2.
- Không hỗ trợ Toast Message
- Không chạy được Appium Inspector trên nền tảng Windows
- Các ứng dụng Hybrid sẽ không được ưu tiên hỗ trợ hoặc hỗ trợ chậm.
Những điều kiện cần có để sử dụng Appium là gì?
Tuy có những mặt hạn chế nhưng Appium vẫn là phần mềm kiểm thử hàng đầu với nhiều tính năng nhất so với các phần mềm kiểm thử khác. Sau khi nắm phần nào về Appium là gì thì chắc hẳn các bạn sẽ hứng thú với việc cài đặt Appium. Tuy nhiên để cài đặt và sử dụng phần mềm này, người dùng cần cài đặt những phần mềm hoặc ứng dụng dưới đây:
- Android SDK (Studio)
- JDK (Java Development Kit)
- Eclipse
- Test Tino Group for Eclipse
- Selenium Server JAR
- Appium Client Library
- APK App Info
Tuy nhiên nên cài đặt phiên bản phù hợp với nhu cầu của bạn và cũng có thể lựa chọn cài đặt phần mềm JavaScript. Bình thường khi cài Appium thì phần mềm JavaScript cũng sẽ được tự động cài đặt theo.
Hướng dẫn chi tiết cách cài đặt Appium
Dưới đây là hướng dẫn chi tiết về cách cài đặt Appium:
Đối với Desktop
Bước 1: Truy cập Appium bằng các công cụ tìm kiếm (Google, Cốc Cốc,…) rồi nhấn Download Appium để cài đặt về máy.
Bạn có thể tải qua đường link: https://appium.softonic.vn/
Chú ý đường truyền mạng nếu muốn tải nhanh hơn.
Bước 2: Khi quá trình tải hoàn tất, bạn nhấn đúp vào file .exe để tự động chạy cài đặt Appium.
Bước 3: Trên hệ điều hành Windows, màn hình chính của Appium sẽ xuất hiện khi phần mềm chạy. Còn trên hệ điều hành MAC thì bạn cần chạy từ file .dmg.
Bước 4: Nhập địa chỉ host, post của server và bắt đầu chạy thử.
Bước 5: Nhấn “Start Server” và một server mới sẽ được tự động chạy theo chỉ định. Ngay lúc này màn hình log output hiện ra để bắt đầu phiên làm việc mới.
Bước 6: Cấp quyền cần thiết cho Appium Server.
Bước 7: Bây giờ, bạn sẽ thấy máy chủ đã được khởi chạy và hoạt động.
Đối với Android Studio
Dưới đây là các bước chi tiết để cài đặt Android Studio:
Truy cập trang Tải Android Studio và tải Android Studio phù hợp với hệ điều hành của bạn (Windows, macOS, Chrome OS, hoặc Linux).
Sau khi tải xong, thực hiện việc cài đặt Android Studio bằng cách nhấp vào các biểu tượng “Next” và cuối cùng là “Finish”.
Chọn tất cả các tùy chọn trong quá trình cài đặt và nhấp vào nút “Next”.
Chọn thư mục cài đặt hoặc giữ nguyên mặc định và nhấp vào nút “Next”.
Chọn chủ đề giao diện người dùng (UI Theme) mà bạn muốn (ví dụ: Darcula hoặc chủ đề trắng) và nhấp vào nút “Finish” để cài đặt các công cụ cần thiết.
Mở Android Studio và điều hướng đến “Configure” > “SDK Manager” để kiểm tra thông tin về SDK. Chọn và cài đặt phiên bản API Android mà bạn muốn sử dụng (ví dụ: Android 11 API).
Chọn các công cụ cần thiết trong SDK Manager và nhấp vào “OK”.
Kiểm tra và sao chép đường dẫn SDK từ SDK Manager để sử dụng sau này.
Tải và cài đặt công cụ RapidEE, sau đó mở nó với quyền quản trị.
Thêm biến môi trường ANDROID_HOME với đường dẫn của SDK Android và kiểm tra biến JAVA_HOME để đảm bảo rằng nó trỏ đến đúng đường dẫn của SDK JAVA.
Thêm các đường dẫn cần thiết của Android tools và JAVA JRE vào biến môi trường hệ thống.
Kiểm tra cài đặt bằng cách mở cửa sổ dòng lệnh và nhập lệnh “sdkmanager –list” để kiểm tra danh sách các gói đã cài đặt.
Kiểm tra uiautomatorviewer bằng cách nhập lệnh “uiautomatorviewer”.
Tạo một dự án mẫu trong Android Studio và cài đặt thư viện còn thiếu bằng cách nhấp vào liên kết được hiển thị.
Sau khi cài đặt thư viện còn thiếu, mở quản lý thiết bị ảo Android bằng cách nhấp vào biểu tượng Android nhỏ. Tạo một thiết bị ảo bằng cách nhấp vào “+ Create a Virtual Device”.
Chọn thiết bị ảo từ danh sách và hoàn tất quá trình cài đặt.
FAQS (Câu Hỏi Thường Gặp)
Dưới đây là những câu hỏi mà mọi người thường thắc mắc về Appium
#1 Tài liệu để tìm hiểu thêm về Appium ở đâu?
Nếu bạn muốn tìm hiểu thêm về Appium, bạn có thể tìm đọc tài liệu hướng dẫn. Tài liệu này chứa thông tin chi tiết về các chức năng, cách sử dụng, và hướng dẫn sâu hơn về Appium. Đáng chú ý, bạn không cần phải có trình độ tiếng Anh xuất sắc, vì bạn có thể sử dụng Google Dịch để hiểu khoảng 80% nội dung trong tài liệu.
#2. Làm thế nào để tìm DOM hoặc XPath trên mobile?
Để tìm phần tử DOM hoặc XPath trong ứng dụng di động Android, bạn có thể sử dụng công cụ UIAutomatorviewer. Công cụ này giúp bạn dễ dàng tìm và xác định các phần tử trong ứng dụng di động.
#3. Cách sửa lỗi “error:org.openqa.selenium.SessionNotCreatedException: A new session could not be created.” ra sao?
Khi bạn gặp phải lỗi “error:org.openqa.selenium.SessionNotCreatedException: A new session could not be created,” điều này thường xảy ra khi bạn đã cấu hình sai đường dẫn đến các thành phần của ứng dụng trong Appium. Để sửa lỗi này, bạn cần điều chỉnh đường dẫn chính xác đến các thành phần này và sau đó khởi động lại máy chủ Appium.
#4. Sửa lỗi “The following desired capabilities are required, but were not provided: device Name, platformName”
Lỗi “The following desired capabilities are required, but were not provided: device Name, platformName” xảy ra khi bạn không cung cấp đầy đủ thông tin cần thiết, như tên thiết bị và tên nền tảng, trong tệp cấu hình khi chạy Appium. Để sửa lỗi này, bạn cần đảm bảo rằng bạn đã cung cấp đầy đủ thông tin cấu hình bao gồm tên thiết bị và tên nền tảng trong tệp script của mình, chẳng hạn:
capabilities.setCapability("deviceName", "Meomeomeo"); capabilities.setCapability("platformName", "Android");
Kết luận
Qua bài viết “Appium là gì?” hy vọng các bạn đã có thêm những kiến thức quan trọng về Appium cũng như cách cài đặt và lý do nên sử dụng Appium. Wiki Lanit còn có rất nhiều những thông tin đang chờ bạn khám phá, đừng ngần ngại theo dõi Wiki Lanit nhé!
Comments are closed.