找到 190 篇文章 关于 Selenium WebDriver
237 次浏览
我们可以使用 Selenium 截取网页屏幕截图。这是一个三步过程。截取屏幕截图是缺陷和故障分析中最重要的一步。首先,我们必须将驱动程序对象转换为 TakeScreenshot 接口。语法TakesScreenshot s = (TakesScreenshot)driver;接下来,我们必须借助 getScreenshotAs 方法获取图像文件,最后使用 FileUtils.copyFile 方法将文件复制到某个位置。语法File src=s.getScreenshotAs(OutputType.FILE); FileUtils.copyFile(src, new File("文件路径"));示例import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; import org.openqa.selenium.OutputType; import org.openqa.selenium.TakesScreenshot; import org.apache.commons.io.FileUtils; import java.io.File; public class ScreenshotCapture{ public static void ... 阅读更多
638 次浏览
我们可以使用 Selenium 在框架内执行 JavaScript。它可以通过 executeScript 方法运行 JavaScript 命令。要执行的命令作为参数传递给该方法。接下来,我们必须使用 return 关键字从 JavaScript 命令返回的值。我们必须借助 JavaScript 中的 window.length 命令来计算页面中框架的数量。语法JavascriptExecutor j = (JavascriptExecutor) driver; int i = Integer.parseInt(j.executeScript("return window.length").toString());示例import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; import org.openqa.selenium.JavascriptExecutor; public class FramesJS{ public static void main(String[] args) { ... 阅读更多
808 次浏览
我们可以使用 Selenium 录制视频。Selenium 中没有默认的录制视频技术。视频可以通过以下流程捕获:需要下载 ATUTestRecorder.jar 和 ATUReporter_Selenium_testNG.jar 文件并保存在项目文件夹中。接下来,将上述两个 jar 文件添加到项目构建路径。右键单击项目 -> 单击属性 -> 选择 Java 构建路径 -> 单击库选项卡 -> 单击添加外部 Jar -> 浏览器并选择 ATUTestRecorder.jar 和 ATUReporter_Selenium_testNG.jar -> 单击应用 -> 单击确定。在项目中有一个文件夹来保存视频。示例@BeforeMethod public void bmethod(Method m){ // 日期格式 ... 阅读更多
7K+ 次浏览
我们可以使用 Selenium 选择日期选择器。处理日历控件有点困难,因为日期、月份和年份的选择可以通过不同的 UI 来表示。有时它们由下拉列表或前后控件表示。让我们选择如下所示的日期选择器。起始日期 - 结束日期 - 示例import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; import org.openqa.selenium.support.ui.Select; public class DatePicker{ public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe"); WebDriver driver = new ChromeDriver(); String frdate = "20"; ... 阅读更多
572 次浏览
我们可以使用 Selenium IDE 关注新窗口。单击链接后,会打开一个新标签页或窗口。访问新窗口后,我们可以将其关闭并切换到父窗口。单击链接执行以下步骤。访问站点是要单击的链接的名称。选择单击链接后打开的窗口。添加事件是单击链接后打开的窗口的页面标题。现在,我们可以在新窗口上执行操作。使用以下步骤关闭新窗口。使用以下步骤返回父窗口。 ... 阅读更多
3K+ 次浏览
在 Selenium 中等待更改的最佳实践是使用同步概念。可以使用隐式和显式等待来处理等待。隐式等待是应用于页面上每个元素的全局等待。隐式等待的默认值为 0。它也是动态等待,这意味着如果隐式等待为 5 秒,并且元素在第 3 秒可用,则立即执行下一步,无需等待全部 5 秒。如果 5 秒后元素未找到,则 ... 阅读更多
4K+ 次浏览
我们可以使用 Selenium 处理模式对话框。模式对话框就像一个窗口,它强制用户在返回实际页面之前访问它。它也可以是身份验证窗口。让我们使用以下模式对话框 - 示例import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; public class ModDialog{ public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.get("http://www.uitestpractice.com/Students/Switchto"); // 识别元素并单击 WebElement m = driver .findElement(By.xpath("//button[contains(text(), ... 阅读更多
577 次浏览
我们可以使用 Selenium 始终从输入元素中删除默认文本。clear 方法用于删除当前存在于编辑框或文本区域中的值。Keys.chord 方法以及 sendKeys 也可以使用。Keys.chord 方法允许你一次传递多个键。键或字符串组作为参数传递给该方法。首先,将 Keys.CONTROL 和 a 作为参数传递给 Keys.chord 方法。然后将整个字符串作为参数传递给 sendKeys 方法。最后,我们必须将 Keys.DELETE 传递给 ... 阅读更多
7K+ 次浏览
我们可以使用Selenium关闭弹出窗口。`getWindowHandles` 和 `getWindowHandle` 方法用于处理弹出窗口。`getWindowHandles` 方法用于将所有打开的窗口句柄存储在 Set 数据结构中。`getWindowHandle` 方法用于存储当前焦点弹出窗口的窗口句柄。迭代窗口句柄可以使用迭代器方法。默认情况下,Selenium 驱动程序控制父窗口。为了将驱动程序的焦点切换到子弹出窗口,我们可以借助 `switchTo().window` 方法。窗口句柄……阅读更多
4K+ 次浏览
我们可以使用Selenium检查滚动位置。要检查位置,我们将使用JavaScript执行器。我们必须验证浏览器中 `window.pageYOffset` 的值。当URL启动时,滚动位于顶部,`window.pageYOffset` 的值为0。当我们滚动到某个元素时,`window.pageYOffset` 的值将大于0。语法:JavascriptExecutor j = (JavascriptExecutor) driver; Long v = (Long) j.executeScript("return window.pageYOffset;");示例:import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; import org.openqa.selenium.JavascriptExecutor; public class ScrollPosition{ public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe"); ... 阅读更多