2011-08-10 33 views
6

Có một trang web tôi đang cố gắng kiểm tra có nhiều hộp văn bản. Tôi đã đi đến điểm mà tôi có thể lấy tất cả các giá trị trong mỗi hộp văn bản và lưu chúng vào một mảng, nhưng tôi bị mắc kẹt về cách gõ các giá trị tương tự đó vào hộp văn bản một lần nữa.IDE selenium - Nhập các giá trị được lưu trữ trong một mảng vào một hộp văn bản?

Dưới đây là những gì tôi có cho đến nay trong Selenium:

What I have so far Larger xem:http://i.stack.imgur.com/rb93k.png

Các lưu biến 'đếm' chỉ đơn giản là số hàng trong bảng, và không gây ra vấn đề. Phần tôi đã vòng tròn màu đỏ là nơi mà các vấn đề đi kèm trong

Khi tôi chạy thử nghiệm này, thay vì gõ giá trị được lưu trữ trong mảng tại chỉ số đó, nó chỉ đơn giản loại:.

enter image description here

Điều này tiếp tục cho đến khi kết thúc.

Biến 'i' được chèn đúng cách, nhưng vì một lý do nào đó thay vì lấy giá trị đó, nó chỉ cần nhập biến đó vào hộp văn bản.

Có ai biết cách tôi có thể nhận được giá trị chính xác trong mảng không?

Dưới đây là dòng có vấn đề:

type | javascript{this.browserbot.getUserWindow().getTestingHooks('TextBoxValue_' + storedVars['i'])} | ${textBoxArray[${i}]} | 

Trả lời

1

Tôi nghĩ rằng bạn cần phải thay thế tài liệu tham khảo được khoanh tròn của bạn để ${textBoxArray[${i}] với

javascript{storedVars['textBoxArray['+storedVars['j']+']']} 

đọc this blog post để biết thêm thông tin, đặc biệt là phần về 'Setting và nhận được biến'.

Trích dẫn từ bài viết, xem xét

store | 10 | x 

Điều này rõ ràng đặt x = 10. Có một vài cách để tham chiếu: $ {x} hoặc được lưu trữVars ['x']. Chúng không giống nhau.

Đặc biệt

Bạn không thể gán bất cứ điều gì đến $ {x}.

1

Bạn có thể chèn một lệnh hơn trước dòng có vấn đề của bạn:

getEval | storedVars['text'] = storedVars['textBoxArray'][storedVars['i']]; 

Và thay đổi dòng có vấn đề để:

type | javascript{this.browserbot.getUserWindow().getTestingHooks('TextBoxValue_' + storedVars['i'])} | ${text} 

Ngoài ra nó sẽ có thể hữu ích để khai báo mảng của bạn ngay từ đầu của thử nghiệm:

storeEval | new Array() | textBoxArray 
2

Tôi đang sử dụng thư viện Selenium thông qua Khung kiểm tra Robot.Tôi không sử dụng bất kỳ IDE nào, chỉ cần sử dụng HTML để tạo các trường hợp thử nghiệm và xác định các từ khóa mới.

Khi bao giờ tôi muốn truy cập vào một mục danh sách biến, tôi chỉ cần sử dụng sau sintaxe

@ {list_variable_name} [0]

lưu ý rằng $ {variable_name} là để truy cập vào một biến giá trị duy nhất hoặc tham chiếu đến biến danh sách. Nếu chúng ta muốn truy cập một mục danh sách, chúng ta cần sử dụng @ thay vì $.

Nếu tôi hiểu được tình huống của bạn, @ {textBoxArray} [$ {i}] sẽ phù hợp với bạn.

Hãy thử thêm $ {textBoxArray } [$ {i}] vì có vẻ như bạn chỉ đang hiển thị sai lần cuối}.

Chi tiết khác tại http://robotframework.googlecode.com/svn/tags/robotframework-2.5.4/doc/userguide/RobotFrameworkUserGuide.html#list-variables

Các vấn đề liên quan