Lập trình mô tả trong QTP / UFT: Động & Tĩnh

Mục lục:

Anonim

Lập trình mô tả là gì?

Lập trình mô tả được sử dụng để thực thi các hoạt động trên một Đối tượng trong AUT có định nghĩa không được lưu trữ trong Kho lưu trữ Đối tượng. Sử dụng cơ chế này, bạn có thể bỏ qua nhận dạng từ Kho lưu trữ đối tượng và cung cấp Mô tả đối tượng trong chính câu lệnh.

Tên đối tượng chỉ đơn giản được sử dụng để ánh xạ một đối tượng trong script với mô tả của nó trong một kho lưu trữ đối tượng. Có nghĩa là nếu bạn thay đổi tên đối tượng trong kho lưu trữ tập lệnh và đối tượng của mình, thì tập lệnh sẽ chạy. Xem video sau về khái niệm này

Bấm vào đây nếu video không thể truy cập được

Video nổi bật

  • Xóa Hộp Chỉnh sửa Đối tượng của Tên Đại lý Win khỏi Kho Lưu trữ Đối tượng. Nếu bạn chạy lại kiểm tra, nó sẽ không thành công vì nó không thể nhận ra đối tượng. Hãy xem lý do tại sao tập lệnh không thành công
  • Trong thời gian chạy, Micro Focus UFT xác định hoạt động được thực hiện trên hộp WinEdit và Mô tả đối tượng trong Kho lưu trữ đối tượng được lưu trữ dưới dạng Tên tác nhân. Nó sử dụng tên này để theo dõi đối tượng trong kho đối tượng. Đối với phụ huynh, bạn không thể có hai đối tượng con có cùng tên. Do đó, QTP ánh xạ duy nhất đối tượng trong kho lưu trữ. Sau đó, nó sử dụng mô tả được lưu trữ trong Kho lưu trữ đối tượng và thay thế tên bằng mô tả. Sau đó, nó sử dụng câu lệnh này để xác định đối tượng trong ứng dụng dưới test / li>
  • Vì trong trường hợp của chúng tôi, chúng tôi đã xóa hoàn toàn mô tả đối tượng này nên tập lệnh không thành công / li>
  • Nhưng điều gì sẽ xảy ra nếu thay vì QTP thay thế mô tả đối tượng, bạn với tư cách là người kiểm tra trực tiếp chỉ định các mô tả đối tượng trong tập lệnh của mình. Đây không phải là gì ngoài "Lập trình mô tả"

Các loại lập trình mô tả

Bạn có thể sử dụng Lập trình mô tả theo hai cách

  1. Tĩnh
  2. Động

Lập trình mô tả tĩnh

Trong Phương pháp tĩnh, để nhận dạng đối tượng, bạn chỉ định thuộc tính của đối tượng theo định dạng sau

property: = giá trị,

Định dạng này được gọi là cặp giá trị thuộc tính và được đặt trong dấu phẩy ngược>

Nếu đối tượng của bạn sử dụng nhiều mô tả để nhận dạng, bạn có thể chỉ định những mô tả đó bằng dấu phẩy >

Vì vậy, trong trường hợp của chúng tôi, mô tả cho Tên đại lý trở thành

"nativeclass: = Edit", "đính kèm văn bản: = Tên đại lý:"

Lập trình mô tả động

Phương pháp thứ hai để thực hiện hành động tương tự là sử dụng lập trình Mô tả động

Trong trường hợp tập lệnh của bạn sử dụng ứng cử viên đối tượng lập trình mô tả nhiều lần, sẽ rất mệt mỏi khi chỉ định tất cả các cặp giá trị thuộc tính cho mỗi câu lệnh

Trong những trường hợp như vậy, bạn có thể sử dụng Lớp mô tả do QTP cung cấp

Cú pháp để tạo một đối tượng mô tả là

Đặt MyDescription = Description.Create ();MyDescription ("thuộc tính"). Value = "property-value";

Đây là phương pháp động

Tại sao sử dụng Lập trình mô tả?

Bản ghi video

  • Câu hỏi triệu đô là tại sao lại sử dụng DP khi quá trình Nhận dạng Đối tượng được QTP xử lý
  • Giả sử bạn được chỉ định kiểm tra một cổng thông tin việc làm. Bạn nhập một truy vấn tìm kiếm vào cổng thông tin và
  • bài kiểm tra của bạn yêu cầu bạn chọn tất cả các công việc có sẵn. và nhấp vào ứng tuyển công việc
  • Nhưng không có công việc nào được phản ánh sẽ phụ thuộc vào truy vấn tìm kiếm và các công việc có sẵn tại thời điểm thực thi tập lệnh nhưng không có cách nào để dự đoán trước số công việc sẽ được phản ánh
  • Trong những trường hợp như vậy, bạn có thể sử dụng lập trình mô tả. Mặc dù bạn không biết số lượng và tên của các hộp kiểm nhưng bạn biết lớp cho các đối tượng là "WebCheckBox"
  • Bạn có thể sử dụng phương thức ChildObject để trả về các đối tượng thuộc về một phụ huynh cụ thể
  • Một dòng mã như -
    Đặt allObjects = Browser ("Công việc"). Trang ("QTP"). ChildObjects ()
  • Sẽ trả về tất cả các đối tượng con cho trang này.
  • Nhưng chúng tôi chỉ muốn các đối tượng WebCheckBox. Để làm như vậy, chúng ta có thể tạo một đối tượng tạo bộ lọc và đặt thuộc tính của nó làm hộp kiểm web và chuyển bộ lọc này làm đối số cho phương thức ChildObjects
  • Trong trường hợp này, chỉ các hộp kiểm được trả về.
  • Tiếp theo, bạn có thể viết mã như thế này để truy cập vào toàn bộ tập hợp các hộp kiểm bắt đầu từ số 0 và đặt tất cả các hộp kiểm BẬT.
  • Tiếp theo, bạn có thể nhấp vào nút áp dụng để hoàn thành bài kiểm tra
  • Bạn cũng có thể sử dụng Lập trình mô tả để chạy các đối tượng khó ghi lại như Bảng tự động ẩn, Đối tượng có cấu trúc phân cấp thay đổi, Đối tượng lồng nhau bên trong, Menu phụ.
  • Bạn cũng có thể thực hiện các thao tác chuỗi nâng cao bằng lập trình mô tả
  • Cùng với thuộc tính chỉ mục, lập trình mô tả có thể rất hữu ích trong việc xác định các đối tượng khó.
  • Nếu bạn sử dụng mô tả có lập trình cho một đối tượng trong hệ thống phân cấp đối tượng, bạn sẽ cần sử dụng lập trình mô tả để tiếp nối các đối tượng con
  • Ví dụ: đối với đối tượng trang, lập trình mô tả đã được sử dụng nhưng để thành công đối tượng con WinEdit Object Repository được sử dụng, điều này không chính xác
  • Ngược lại ở đây đối với cả lập trình mô tả Trang và WinEdit được sử dụng, điều này là chính xác