Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Selenium Bắt sự kiện của div con !

12:50 16-10-2018 615 lượt xem 3 bình luận 15:46 18-10-2018

Chào Admin,

Cho e hỏi cách bắt sự kiện 1 element trong div. Ví dụ trang http://vn2.7msport.com/pk_live_vn.aspx khi load trang lên mình sẽ thấy 1 phần load sau cùng. Nhưng nó không nằm trong frame mà là nằm trong div. Mọi element bên ngoài e đều làm và bắt sự kiện được hết nhờ vào ID, XPath, CssSelector... Nếu nó nằm trong frame thì mình có thể chuyển frame rồi. Switchto nhưng nó load lên bằng div thì sao ? A help e với. Hoặc cho e 1 solution. E xin chân thành cảm ơn. 1 lần nữa xin cảm ơn các bài giảng của a về Selenium rất hay và hữu ích. Chúc Admin nhiều sức khỏe.

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Người nhện đã bình luận 15:46 18-10-2018

A cho e hỏi khi mình tìm thấy được 1 element trên web bằng XPath hoặc CssSelector rồi. Mình muốn lấy giá trị nó gán vô 1 biến thì sao ? Ở đây e chỉ dùng được 2 phương thức SendKeys() và Click(). E muốn lấy giá trị text của nó sau đó so sanh rồi thực hiện 1 số nhiệm vụ khác. 

 var giaTri= firefoxDriver.FindElementByXPath("/html/body/div[2]/div/div[2]/div/div[3]/div[2]/div[2]/div[1]/div/div[2]/div[3]/div[2]/div/span");

if else 

luc nay e muon if else o day khi nao giaTri nay bằng đúng cá chuỗi nào đó e so sánh thì e mới cho xảy ra sự kiện, còn ko có thì thôi. 

Người nhện đã bình luận 08:57 18-10-2018

Em cám ơn anh. Em đã test lại ok rồi. Nhưng trường hợp này e chỉ dùng được XPath thôi còn CssSelector thì ko tìm thấy. A có kinh nghiệm có thể chì e biết là cái nào mình có thể dùng XPath và cái nào dùng CssSelector. ( Hay mình phải tự mò test...). Và 1 vấn đề nữa e muốn hỏi là khi mình tìm ra được 1 đối tượng rồi bấm nút Click sau đó hiện lên 1 MessageBox bằng javascript. Lúc này mình muốn bắt các sự kiện trên popup này thì phải nên làm sao ??? E xin cảm ơn.

K9 SuperAdmin, KquizAdmin, KquizAuthor đã bình luận 16:21 17-10-2018

ủa trong div thì cứ bắt xpath bình thường thôi là được mà bạn. bạn cho delay đợi đến khi nó được load ra thì vẫn bắt được thôi

Câu hỏi mới nhất