Tôi có một câu hỏi bán mơ hồ để hỏi về Selenium. Tôi đã khám phá ra một vài cách khác nhau để thực hiện các hành động bằng cách sử dụng FirefoxDriver. Những gì tôi cần làm là lặp lại các hành động mà người dùng thực hiện trên trang web (nhấp vào liên kết, chọn hộp kiểm, v.v.). Có phương pháp hay kết hợp các phương pháp nào cho phép tôi "ghi lại" hành động của người dùng không? Dưới đây là những gì tôi có cho đến nay để thực hiện hành động (bạn sẽ nhận thấy tôi đã cố gắng sử dụng các lớp WebDriverBackedSelenium và hành động để thực hiện hành động)Ghi lại hành động bằng cách sử dụng Selenium
import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriverBackedSelenium;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.interactions.Action;
public class MyReplayer {
public static void main(String[] args) throws Exception {
// The Firefox driver supports javascript
FirefoxDriver driver = new FirefoxDriver();
driver.get("http://www.cs.umd.edu");
List<WebElement> elements = driver.findElements(By.tagName("a"));
//WebDriverBackedSelenium driverBacked = new WebDriverBackedSelenium(driver, "http://www.cs.umd.edu");
Actions builder = new Actions(driver);
Action clickLink = builder.click(elements.get(100)).build();
clickLink.perform();
//driverBacked.click("document.getElementsByTagName('a')[100]");
}
}
Bạn có biết cách IDE Selenium có thể ghi lại hành động của người dùng không? Đó là chức năng mà tôi đang tìm kiếm để thực hiện bản thân mình nhưng tôi không biết bất kỳ phương pháp nào để giúp tôi làm điều đó. – user1294114
Tôi không biết làm thế nào Selenium IDE hiện nó. Nhưng tôi nghĩ rằng họ bắt sự kiện thay đổi trong DOM của trang bạn đang xem. Tôi không biết chúng được tích hợp vào GUI của Trình duyệt nhưng điều đó cũng có thể xảy ra. Phần lớn có thể được tìm thấy ở phía máy chủ, nhưng tìm ra nếu một hộp kiểm đã được kiểm tra mà không gửi trang đến máy chủ chỉ có thể xảy ra trên máy khách (hoặc bạn sẽ phải thực hiện cuộc gọi ajax cho mọi thứ) –