Tạo các dự án thử nghiệm Appium mạnh mẽ bằng cách Xác định các đối tượng trong ứng dụng di động của bạn bằng các thuộc tính gốc / web của chúng. Xem các hướng dẫn sau để tìm hiểu về gián điệp đối tượng Appium Studio và số nhận dạng XPath. Học kiểm thử phần mềm chuyên nghiệp Đối tượng Spy Spy là một công cụ độc đáo trong Appium Studio cho phép tạo ra các bãi chứa XML có chứa tất cả các yếu tố có mặt trên màn hình bất cứ lúc nào. Truy vấn XPath sau đó có thể được thực hiện bằng cách sử dụng thông tin này. Một bộ đầy đủ các thuộc tính cho mỗi phần tử cũng được tạo bởi Object Spy. Nếu các phần tử gốc hoặc Web của một trang cụ thể đang được kiểm thử phần mềm bằng Object Spy, một tệp XML được tạo một cách đại diện bằng cây phần tử, trong đó mỗi nút của cây đại diện cho một phần tử với các thuộc tính khác nhau. Cú pháp ngôn ngữ XPath 1.0 có thể được sử dụng thông qua SeeTest để xác định các thành phần cây. Một ngôn ngữ truy vấn hữu ích để sử dụng với cây XML, XPath cho phép người dùng truy cập các thuộc tính của các phần tử và các phần tử xung quanh chúng (liên quan đến vị trí của chúng trong cây). Điều này giúp nhận dạng dễ dàng và hiệu quả hơn trong các tập lệnh tự động hóa. Bạn có thể truy cập w3schools để tìm hiểu thêm về XPath, cú pháp và cách triển khai của nó. Các trang tiếp theo sẽ đi sâu vào chi tiết về cách sử dụng công cụ Object Spy và các tính năng của nó trong Appium Studio. Object Spy là một công cụ mạnh mẽ mới cho Appium Studio cho phép người dùng truy cập các thuộc tính của tất cả các đối tượng và thành phần trên màn hình để thử nghiệm. Các thuộc tính có thể được thực hiện vào tất cả các thử nghiệm được tạo. Các phần tử nguyên bản, Web và Bản địa không có dụng cụ đều có thể có các thuộc tính được xác định và truy cập bởi Object Spy. Mỗi trường hợp được thảo luận dưới đây: Nếu một phiên bản nền trước của một ứng dụng được chạy, Object Spy sẽ làm nổi bật tất cả các thành phần bằng hình chữ nhật màu đỏ và các thuộc tính gốc của các thành phần được liệt kê bằng màu đỏ. Một danh sách đầy đủ các thuộc tính, bao gồm cả các thuộc tính được chỉ định cho một yếu tố cụ thể của nhà phát triển, được tạo. Trong hình trên, chúng ta thấy rằng tất cả các thuộc tính của nút Đăng nhập trực tuyến có thể được nhìn thấy chỉ bằng cách nhấp vào biểu tượng của đối tượng Spy Spy Spy. Object Spy có nhiều tùy chọn khả dụng trong Appium Studio. Trích xuất đối tượng Đối tượng trích xuất đối tượng cung cấp cho người dùng khả năng thêm một đối tượng nhất định vào kho đối tượng của Appium Studio. Đầu tiên, nhấp chuột phải vào yếu tố bạn muốn giải nén. Sau đó, nhấp vào Tạo một đối tượng mới và điền vào các chi tiết. Đối tượng mới này sẽ được đặt vào kho lưu trữ của bạn. Điền vào các chi tiết, chẳng hạn như tên và các thuộc tính xác định, sau đó nhấp vào OK OK. Nếu bạn muốn tạo một tham chiếu đến một đối tượng đã tồn tại trong kho lưu trữ của mình, bạn có thể nhấp vào Thêm Thêm vào Hiện tại. Một danh sách các yếu tố có sẵn trong kho lưu trữ của bạn sẽ xuất hiện và bạn có thể chọn một yếu tố để tạo một tham chiếu đến nó. Trích xuất nhiều yếu tố Tùy chọn trích xuất nhiều phần tử cung cấp cho bạn khả năng thêm nhiều hơn một đối tượng vào kho lưu trữ của bạn bất cứ lúc nào. Chọn tùy chọn này sẽ cung cấp cho bạn một danh sách tất cả các yếu tố có sẵn trên màn hình. Chọn những cái bạn muốn thêm vào kho lưu trữ của bạn, sau đó nhấp vào Thêm Add và tất cả chúng sẽ được gửi đến đó. Bỏ qua các yếu tố Chọn loại bỏ qua, nói với Object Spy bỏ qua yếu tố bạn đang kiểm thử phần mềm. Điều này cho phép bạn kiểm thử các phần tử có thể bên dưới hoặc chồng chéo với phần tử bị bỏ qua dễ dàng hơn. Trong ví dụ trên , chúng ta lại sử dụng phần tử Đăng nhập trực tuyến và bỏ qua nó. Nhấp vào một lần nữa cho phép chúng tôi điều tra lớp lớp tuyến tính tuyến tính vì nút Đăng nhập bị bỏ qua. Sao chép XPath độc đáo Sao chép XPath rất hữu ích vì bạn có thể sẽ truy xuất chúng để sử dụng lặp lại sau này trong giao thức thử nghiệm của bạn. Giá trị XPath cho nút Đăng nhập như sau: XPath = // * [@ text = 'Đăng nhập'] Sao chép XPath duy nhất (SkipText) Do các thuộc tính văn bản có thể là động và thay đổi thường xuyên, nên chức năng SkipText cho phép người dùng tạo hoặc sao chép XPath mà không cần bất kỳ thuộc tính văn bản nào. Trong trường hợp này, giá trị các nút Đăng nhập sẽ là: XPath = // * [@ id = 'loginButton']. Chế độ không dụng cụ gốc Các đối tượng trong bàn đạp thiết bị, chẳng hạn như thư viện, cài đặt và máy ảnh, có thể được SeeTest xác định. Tất cả các yếu tố của loại này sẽ được làm nổi bật bởi các hình chữ nhật màu cam, với các thuộc tính riêng được đọc ở chế độ không có dụng cụ. Một ví dụ về màn hình chính trong Object Spy trong chế độ này được đưa ra dưới đây: Tất cả các thuộc tính được thấy trong ví dụ trên có thể có XPath được xây dựng và được sử dụng trong các thử nghiệm. Kiểm thử Appium cho ứng dụng web Tự động hóa các ứng dụng web là khi công cụ Object Spy trở nên hữu ích nhất. Nó có thể được sử dụng để xem tất cả các thuộc tính do nhà phát triển xác định trên một trang web nhất định. XPath động có thể được tạo cho từng thuộc tính này và lần lượt các XPath này có thể được sử dụng trong các thử nghiệm ứng dụng. Các tùy chọn cho các thành phần web giống như đối với các thành phần gốc, với các tùy chọn bổ sung cũng như được nêu ra phía trước. Các yếu tố phóng to kết xuất web Thu phóng khung nhìn được Object Spy tính đến khi kiểm thử phần mềm các yếu tố web, để tạo ra một bãi chứa web một cách thích hợp. Tuy nhiên, các thuộc tính thu phóng CSS vốn bị bỏ qua (ví dụ: style = zoom zoom: 4; ' ) và các thuộc tính HTML hoặc truy vấn phương tiện. Điều này có thể tác động đến kết xuất web và làm cho nó không phối hợp. Để giải quyết vấn đề này, hãy bật support.css.zoom trong tệp app.properIES bằng dòng văn bản sau: Hiển thị trong Trình duyệt Chọn mục này sẽ mở trang web đang được kiểm thử bằng trình duyệt mặc định của máy, cho phép bạn tự mình điều tra các thuộc tính đối tượng. Một ví dụ về điều này được hiển thị dưới đây cho Google: Mở Bảng điều khiển JavaScript Nếu bạn muốn phát triển hoặc thử nghiệm JavaScript trên các thành phần web, bạn có thể mở bảng điều khiển JavaScript trong Appium Studio. Bảng điều khiển này rất dễ sử dụng. Chỉ cần mở công cụ Spy Spy, nhấp chuột phải vào bất kỳ yếu tố web nào và nhấp vào Mở Bảng điều khiển JavaScript Mở. Sau đó, một hộp thoại giao diện điều khiển sẽ được mở. Bạn có thể viết JavaScript và thực thi nó bằng nút Run. Khi bạn viết xong tập lệnh của mình trong bảng điều khiển JavaScript, bạn chỉ cần sao chép-dán nó vào các tham số Script của lệnh HybridRunJavaScript. Kết quả sẽ được trả về dưới dạng một chuỗi. Ví dụ: Tập lệnh sau trích xuất màu văn bản của một thành phần web đã cho. Không dụng cụ-bãi Các kết xuất XML không có công cụ có thể được truy xuất trong một ứng dụng cụ, ở chế độ Chrome hoặc Safari. Thậm chí còn có nhiều tùy chọn có sẵn cho Object Spy trong Appium Studio. Bộ lọc XPath XPath động do người dùng tạo có thể được tạo bằng tùy chọn bộ lọc XPath của SeeTest. Đối với truy vấn XPath đã cho, bộ lọc chỉ định tất cả các phần tử đáp ứng định nghĩa của nó. Một sự kết hợp của một hoặc nhiều thuộc tính hoặc thuộc tính có thể tạo thành XPath này. Xem ví dụ dưới đây trong đó tất cả các yếu tố đáp ứng một truy vấn cụ thể được tô sáng: Bộ lọc văn bản miễn phí Nếu bạn không chắc chắn về một thuộc tính văn bản cụ thể và giá trị tương ứng của nó, Bộ lọc văn bản có thể giúp bạn. Nó lọc các yếu tố bằng chính xác các thuộc tính và giá trị này. Chẳng hạn, trong ví dụ dưới đây , tất cả các yếu tố có tiếng Anh Tiếng Anh trong các phép gán thuộc tính hoặc giá trị của chúng đã được tô sáng bằng Bộ lọc văn bản. Bộ lọc biểu thức chính quy Để tùy chỉnh bộ lọc, bạn có thể sử dụng bộ lọc biểu thức chính quy, bộ lọc theo bất kỳ biểu thức chính quy nào do người dùng xác định. Chẳng hạn, tất cả các yếu tố phù hợp với mẫu biểu thức chính quy G. G. * được lọc bên dưới. Nếu các phần tử gốc hoặc Web của một trang cụ thể đang được kiểm thử phần mềm bằng Object Spy, một tệp XML được tạo một cách đại diện bằng cây phần tử, trong đó mỗi nút của cây đại diện cho một phần tử với các thuộc tính khác nhau. Cú pháp ngôn ngữ XPath 1.0 có thể được sử dụng thông qua SeeTest để xác định các thành phần cây. Một ngôn ngữ truy vấn hữu ích để sử dụng với các cây XML, XPath cho phép người dùng truy cập các thuộc tính của các phần tử và các phần tử xung quanh chúng (liên quan đến vị trí của chúng trong cây). Điều này làm cho nó dễ dàng hơn và hiệu quả hơn trong các kịch bản tự động hóa. Như đã nói trước đây, w3schools có thể là một nơi tuyệt vời để tìm hiểu thêm về XPath. Cách cải thiện kiểm thử Appium với tính năng XPath Sử dụng hướng dẫn sau để chuẩn bị, cài đặt và khởi chạy thử nghiệm Appium với XPath: Xem thiết bị Android để thực hiện trên Android . Hỗ trợ XPath được bao gồm cho các ứng dụng gốc không có công cụ. Để truy xuất các thuộc tính gốc / web của tất cả các thành phần trên màn hình, hãy nhấp vào biểu tượng Spy Spy. Bấm chuột phải vào các thuộc tính mong muốn của một thành phần nhất định, một hoặc nhiều và bấm Sao chép XPath. Điều này sẽ sao chép một truy vấn vào bảng tạm cho phép bạn tìm kiếm tất cả các yếu tố có các thuộc tính và giá trị được kiểm thử. Chẳng hạn, trong ví dụ dưới đây, chúng tôi sao chép một truy vấn tìm kiếm thuộc tính id, IM IM_branding, và thuộc tính lớp, android android.widget.ImageView Một truy vấn có thể được tạo hoặc chỉnh sửa động bằng hộp tìm kiếm XPath ở dưới cùng của cửa sổ cây. Chèn một truy vấn được sao chép vào hộp này sẽ kiểm thử tất cả các yếu tố trên màn hình và những yếu tố thỏa mãn truy vấn đó sẽ được tô sáng trong phần phản chiếu của thiết bị. Trong ví dụ của chúng tôi , chúng tôi thấy rằng phần tử được tô sáng là phần tử mà chúng tôi trích xuất các thuộc tính ở vị trí đầu tiên. Đây là một xác nhận mạnh mẽ rằng truy vấn của chúng tôi sẽ tìm kiếm phần tử mong muốn và có thể được sử dụng trong các tập lệnh tự động hóa của chúng tôi. Như được hiển thị trong ví dụ dưới đây, có những lúc điều này sẽ không xảy ra: Ở đây, thuộc tính id của một phần tử (có nhãn giá trị ) đã được truy xuất, nhưng sau khi đặt truy vấn này vào hộp tìm kiếm, 11 phần tử được tô sáng. Đây là lý do tại sao sử dụng các truy vấn này trong một kịch bản tự động hóa mà không hiểu các thông số kỹ thuật chính xác có thể nguy hiểm. Chúng tôi khuyên bạn nên đảm bảo các truy vấn của mình đủ cụ thể để xác định duy nhất bất kỳ yếu tố nào bạn muốn tách biệt. Một truy vấn XPath duy nhất có thể được tạo tự động trong SeeTest cho một phần tử cụ thể. Nếu việc tạo truy vấn tự động của SeeTest không thành công, tham số chỉ mục của các lệnh hành động có thể được sử dụng để phân biệt giữa các thành phần không được xác định duy nhất. Tùy chọn XPath nâng cao Tích hợp với các yếu tố tương đối ../* - Lệnh này tích hợp các thuộc tính của anh chị em với từng thành phần trong truy vấn. Mỗi khi gặp lệnh ../, công cụ sẽ tăng cấp độ khác trong cấu trúc phân cấp, vì vậy ../../* có thể được sử dụng để tích hợp một thuộc tính từ cha của một phần tử. Ví dụ: Ở đây chúng tôi thấy việc sử dụng các thuộc tính văn bản của nhãn trong XPath để xác định duy nhất một nút mũi tên ở bên phải của văn bản. XPath = // * [@ id = 'phụ kiện'] Nếu chỉ thuộc tính id có nhãn phụ kiện được chỉ định, thì tất cả 4 nút mũi tên sẽ đáp ứng truy vấn. Bản thân nút mũi tên không có thuộc tính nào khác giúp chúng ta phân biệt nó, vì vậy thay vào đó, chúng ta sử dụng thuộc tính văn bản của nhãn để xác định duy nhất mũi tên. Chúng tôi sử dụng lệnh ../* trong truy vấn của mình, loại bỏ tất cả các yếu tố không có anh chị emtrong cây với thuộc tính văn bản và giá trị Tóm tắt TV của Hoa Kỳ . Điều này xác định duy nhất nút mũi tên mà chúng tôi đang tìm kiếm.