
Kiểm thử phần mềm là một công việc khó. Vì thế, việc sử dụng các phần mềm trợ giúp trong việc kiểm thử sẽ mang lại kết quả tốt hơn cho đội ngũ phát triển dự án. Nhất là việc phải test một kịch bản nhiều lần tốn thời gian, sử dụng tool sẽ giúp giải quyết vấn đề trên. Appium là một phần mềm như vậy.
Vậy cụ thể Appium là gì? Cách cài đặt Appium ra sao? Những thắc mắc này sẽ được giải đáp chi tiết trong bài viết dưới đây của aetc.edu.vn nhé!
Table of Contents
Appium là gì?
Appium là một công cụ kiểm thử tự động hóa mã nguồn mở được phát triển và hỗ trợ bởi Sauce Labs để test các ứng dụng di động hybrid, native, mobile web app trên cả hai nền tảng IOS và Android hoàn toàn miễn phí. Không chỉ hỗ trợ kiểm thử phần mềm trên các nền tảng giả lập (simulator/emulator) mà còn hỗ trợ kiểm thử trên các thiết bị vật lý (physical device).
Phần mềm Appium được phát triển dựa trên hệ thống nền tảng Selenium và kế thừa tất cả các đối tượng, cấu trúc và cú pháp. Vì thế, Appium có thể chạy liên tục trên nhiều thiết bị và trình giả lập khác nhau nó trở thành một lựa chọn thích hợp tối ưu cho tự động hóa kiểm thử trên thiết bị di động. Điều này sẽ rút ngắn thời gian để thiết lập từng bộ test suite cho từng nền tảng.
Một trong những nguyên lý cơ bản cốt lõi của Appium là mã kiểm thử có thể được viết bằng bất kỳ một framework hoặc ngôn ngữ nào như Ruby on Rails, PHP, Python, C# và Java mà không phải sửa đổi các ứng dụng cho mục đích tự động hóa. Sự tương tác giữa máy chủ của node.java và thư viện máy khách Selenium là những việc làm cuối cùng với ứng dụng di động.

Appium là một công cụ kiểm thử tự động hóa mã nguồn mở được phát triển
Lý do nên sử dụng Appium
Vậy Appium là gì mà lại được nhiều doanh nghiệp tin tưởng sử dụng đến vậy. Nhiều chuyên gia đánh giá rằng đây thực sự là công cụ đáng để các lập trình viên nên dành thời gian nghiên cứu. Một số công dụng của Appium cần phải kể đến là:
- Khả năng kiểm tra hồi quy ứng dụng rất nhanh và đơn giản. Những kỹ sư hoặc lập trình viên đang nghiên cứu về mobile app nên sử dụng Appium.
- Appium có thể hỗ trợ dưới nhiều nền tảng hệ điều hành khác nhau, cụ thể là IOS và Android đây là hai nền tảng có số người dùng lớn nhất hiện nay.
- Appium hỗ trợ đa ngôn ngữ. Công cụ này thích hợp với vô số ngôn ngữ lập trình khác nhau như: Node.js, PHP, Python, Perl, C#… Đây là điểm cộng lớn bởi rất nhiều công cụ test khác gặp hạn chế về mặt ngôn ngữ lập trình.
Bên cạnh đó, Appium có thể khắc phục những nhược điểm của các công cụ tự động hóa khác trên thị trường. Appium có thể chạy liên tục trên nhiều trình giả lập khác nhau, giúp quá trình kiểm thử trở nên tiện lợi hơn bao giờ hết.

Appium có thể hỗ trợ dưới nhiều nền tảng hệ điều hành khác nhau
Kiến trúc của Appium
Appium là một máy chủ HTTP được viết bằng nodejs, tạo và xử lý nhiều phiên WebDriver cho các nền tảng khác nhau như iOS và Android. Appium bắt đầu một “test case” trên thiết bị sinh ra một máy chủ và nghe các lệnh proxy từ máy chủ Appium chính. Nó gần như giống như cách máy chủ Selenium nhận thức được yêu cầu HTTP từ thư viện máy khách selenium.
Sau đó xử lý các yêu cầu theo những cách khác nhau tùy thuộc vào nền tảng. Mỗi nhà cung cấp như IOS và Android có một cơ chế khác nhau để chạy một trường hợp kiểm thử trên thiết bị để Appium chạy test case này sau khi nhận lệnh từ máy chủ Appium.

Appium tạo và xử lý nhiều phiên WebDriver cho các nền tảng khác nhau như iOS và Android
Một số câu hỏi thường gặp của Appium
- Tài liệu nào cung cấp đầy đủ kiến thức về Appium?
Appium Document sẽ giúp các bạn tìm hiểu Appium là gì? chức năng, và cách sử dụng sâu rộng về phần mềm này. Bạn không cần một trình độ tiếng Anh quá xuất sắc, chỉ cần sử dụng Google dịch cũng có thể hiểu khoảng 80% những gì tài liệu chia sẻ.
- Làm cách nào để tìm DOM hoặc XPath trong ứng dụng mobile?
Để tìm phần tử DOM hoặc XPath trong ứng dụng, phần mềm mobile Android. Bạn có thể sử dụng công cụ UIAutomatorviewer để hỗ trợ bạn trong việc tìm kiếm đấy!
- Cách sửa lỗi “error:org.openqa.selenium.SessionNotCreatedException: A new session could not be created.” ra sao?
Khi gặp phải lỗi này đồng nghĩa với việc bạn sử dụng đường dẫn sai đến các thành phần của App.
Để sửa lỗi, bạn cần sửa lại đúng đường dẫn đến các thành phần sau đó khởi động lại Appium server.
- Sửa lỗi “The following desired capabilities are required, but were not provided: device Name, platformName” bằng cách nào?
Lỗi “The following desired capabilities are required, but were not provided: device Name, platformName” xuất hiện khi bạn chưa cung cấp đầy đủ thông tin về: Tên thiết bị, tên nền tảng tệp khi chạy Appium.
Để sửa lỗi, bạn cần cung cấp đầy đủ các thông tin trong script cho Appium như:
capabilities.setCapability ("deviceName","Meomeomeo") capabilities.setCapability ("platformName","Android")
Appium thực sự là phần mềm sẽ giúp lập trình viên hay tester tiết kiệm thời gian trong việc kiểm thử ứng dụng. Nếu bạn đang đang đau đầu với việc phải test đi test lại cùng một kịch bản với nhiều lần thì đừng ngần ngại sử dụng công cụ hữu ích này nhé. Hi vọng bài viết trên sẽ giúp bạn hiểu rõ hơn tool Appium là gì cũng như cách sử dụng.