Ví dụ kiểm thử tự động với Appium

Cập nhật ngày: 17/09/2021 - Đã có 1417 lượt xem bài viết này!
Ví dụ kiểm thử tự động với Appium
Kiểm thử tự động với một ứng dụng cơ bản trong Android - Calculator

Ví dụ kiểm thử tự động với Appium

Kịch bản kiểm thử

Trong ví dụ này, chúng ta sẽ kiểm thử tự động với một ứng dụng cơ bản trong Android – Calculator:

-  Mở ứng dụng Calculator trên Android
-  Nhấn vào một số (5)
-  Nhấn dấu công (+)
-  Nhấn vào số thứ hai (6)
-  Nhấn dấu bằng (=)

>> Kiểm tra kết quả hiển thị (11)

Các bước chuẩn bị

-  Để mã kiểm thử kết nối với thiết bị Android thông qua Appium, chúng ta cần tên của thiết bị.
-  Để có thể khởi động được một ứng dụng thông qua Appium, chúng ta cần hai giá trị đại diện cho một ứng dụng trong trong Android: Package và Activity
-  Để tương tác với các đối tượng UI, chúng ta cần các thông tin về đối tượng UI thông qua UIAutomator hay Appium Inspect

Lấy tên của thiết bị

Để lấy tên của thiết bị đang được kết nối với máy tính, chúng ta sử dụng câu lệnh adb devices trong màn hình console:

imicrosoft-vi-du-appium-calculator

Tìm Package và Activity của một ứng dụng

Có nhiều cách để chúng ta có thông tin về Package/Activity của một ứng dụng:

-  Thông qua một ứng dụng thứ ba – ví dụ như APK Info và UIAutomatorViewer
-  Thông qua tập tin AndroidManifest.xml của ứng dụng, cách này chúng ta cần có tập tin APK của ứng dụng
-  Đọc tập tin log khi ứng dụng đang hoạt động – adb logcat
-  Hỏi trực tiếp các kỹ sư phát triển

Ở đây, mình dùng cách đơn giản nhất, dùng một ứng dụng thứ ba để có thông tin cần thiết:

-  Đầu tiên, chúng ta sẽ cài đặt ứng dụng APK Info từ Google Play
-  Khởi động ứng dụng APK Info, chúng ta sẽ có một danh sách các ứng dụng có trong thiết bị
-  Lựa chọn ứng dụng Calculator và hiển thị các thông tin của ứng dụng, bao gồm Package và Activity. Đối với một số ứng dụng mặc định của Android (như ứng dụng Calculator), APK Info không thể lấy được thông tin về Package nên chúng ta chỉ lấy thông tin về Activity.

imicrosoft-vi-du-appium-calculator

imicrosoft-vi-du-appium-calculator

-  Đối với thông tin Package, chúng ta có thể sử dụng công cụ UIAutomatorViewer

Lấy thông tin về đối tượng UI

Theo bài trước về công cụ UIAutomatorViewer, chúng ta có các đối tượng mà kịch bản kiểm thử cần tương tác, vì ứng dụng này khá cơ bản nên mình sẽ dùng những cách khác nhau để xác định đối tượng UI:

-  Nút số 5: By.id(‘com.android.calculator2:id/digit5’)
-  Nút cộng: By.xpath(“//android.widget.Button[@text=’+’]”)
-  Nút số 6: By.id(“com.android.calculator2:id/digit6”)
-  Nút bằng: By.xpath(“//android.widget.Button[@text=’=’]”)
-  Hiển thị kết quả: By.className(“android.widget.EditText”)

Viết mã kiểm thử

-  // Thiết lập các thông tin để kết nối với thiết bị Android và khởi động ứng dụng Calculator
-  DesiredCapabilities capabilities = new DesiredCapabilities();
-  capabilities.setCapability(“deviceName”, “emulator-5554”);
-  capabilities.setCapability(“platformName”, “Android”);
-  capabilities.setCapability(“appPackage”, “com.android.calculator2”);
-  capabilities.setCapability(“appActivity”,”com.android.calculator2.Calculator”);
-  // Khởi tạo các đối tượng driver để thực thi kiểm thử
-  AndroidDriver driver = new AndroidDriver(new URL(“http://127.0.0.1:4723/wd/hub”), capabilities);
-  driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);

-  // Các bước tương tác với ứng dụng
-  driver.findElement(By.id(“com.android.calculator2:id/digit5”)).click();
-  driver.findElement(By.xpath(“//android.widget.Button[@text=’+’]”)).click();
-  driver.findElement(By.id(“com.android.calculator2:id/digit6”)).click();
-  driver.findElement(By.xpath(“//android.widget.Button[@text=’=’]”)).click();
-  // Kiểm tra kết quả hiển thị
-  Assert.assertEquals(“11”, driver.findElement(By.className(“android.widget.EditText”)).getText());
-  // Kết thúc kiểm thử bằng việc đóng ứng dụng
-  driver.quit();


BTV.Trần Thị Thu Huyền
Phòng Truyền Thông IMicroSoft Việt Nam
Hotline: 0916 878 224
Email: huyenttt@imicrosoft.edu.vn

Xem khóa đào tạo nhân sự theo danh mục!

Xem các khóa đào tạo nhân sự