找到 720 篇文章 关于测试工具

如何设置 Selenium Python WebDriver 默认超时?

Debomita Bhattacharjee
更新于 2020年10月26日 06:38:44

6K+ 次浏览

我们可以使用 Selenium webdriver 设置默认超时。set_page_load_timeout 方法用于设置页面加载的超时时间。等待时间(秒)作为参数传递给该方法。语法:driver.set_page_load_timeout(5)如果在等待时间过后页面仍未加载完成,则会抛出 TimeoutException 异常。我们可以在同步中使用隐式等待的概念来定义默认超时时间。这是一个全局等待时间,应用于页面上的每个元素。implicitly_wait 方法用于定义隐式等待。等待时间(秒)作为参数传递给该方法。语法:driver.implicitly_wait(5);TimeoutException异常将会…… 阅读更多

如何在 Selenium 中使用 gecko 可执行文件?

Debomita Bhattacharjee
更新于 2020年10月26日 06:37:18

257 次浏览

我们可以使用 gecko 可执行驱动程序与 Selenium webdriver 配合使用。对于 47 以上版本的 Mozilla,由于存在 Marionette(Mozilla 的自动化驱动程序),因此使用 geckodriver。我们可以通过使用以下语句实例化 FirefoxDriver 类对象来启动 Firefox。WebDriver driver=new FirefoxDriver();接下来,我们需要下载 geckodriver 并按照以下步骤将其配置到我们的项目中:访问链接 - https://www.seleniumcn.cn/downloads/ 并移动到“浏览器”文本下方,那里有一个 Firefox 部分。单击其下方的“文档”链接。所有 geckodriver…… 阅读更多

如何在 Selenium 中按索引选择 XPath 节点集中的指定节点?

Debomita Bhattacharjee
更新于 2020年10月26日 06:33:17

6K+ 次浏览

我们可以使用 Selenium webdriver 按索引选择 XPath 节点集中的特定节点。我们可以使用方括号 [] 中的索引号来提及特定节点。让我们看一下下面 HTML 代码中具有子元素的元素。带有 ul 标签的元素具有多个带有 li 标签的子元素。如果我们想识别父元素(文本为“软件质量管理”)的第二个子元素,则带有节点索引的 XPath 表达式应为 //ul[@class='list']li[2]。用于识别父元素 ul 的第二个子元素的 XPath 表达式也可以使用…… 阅读更多

使用 Python Selenium 访问 HTML 源代码。

Debomita Bhattacharjee
更新于 2020年10月26日 06:29:21

3K+ 次浏览

我们可以使用 Selenium webdriver 访问 HTML 源代码。我们可以借助 page_source 方法并将从该方法获得的值打印到控制台。语法:src = driver.page_source我们还可以借助 Selenium 中的 Javascript 命令访问 HTML 源代码。我们将借助 execute_script 方法并将命令 return document.body.innerHTML 作为参数传递给该方法。语法:h = driver.execute_script("return document.body.innerHTML;")示例代码实现。from selenium import webdriver driver = webdriver.Chrome(executable_path="C:\chromedriver.exe") driver.implicitly_wait(0.5) driver.get("https://tutorialspoint.com/index.htm") # 使用 page_source 方法访问 HTML 源代码 s = driver.page_source print(s)使用 Javascript 执行器的代码实现。from selenium import webdriver driver = webdriver.Chrome(executable_path="C:\chromedriver.exe") driver.implicitly_wait(0.5) ... 阅读更多

使用 Selenium WebDriver 读取 JavaScript 变量。

Debomita Bhattacharjee
更新于 2020年10月26日 06:27:47

2K+ 次浏览

我们可以使用 Selenium webdriver 读取 Javascript 变量。Selenium 可以借助 executeScript 方法运行 Javascript 命令。要执行的 Javascript 命令作为参数传递给该方法。我们还必须添加语句 import org.openqa.selenium.JavascriptExecutor 来使用 Javascript。语法:JavascriptExecutor j = (JavascriptExecutor) driver; j.executeScript("return document.title")让我们通过读取 Javascript 变量中的值来获取以下页面的浏览器标题。输出应为“关于 Tutorials Point 的职业生涯 - Tutorialspoint”。示例代码实现: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 JavascriptReadValue{    public static void main(String[] args) {   ... 阅读更多

如何使用 Selenium Webdriver 截取特定元素的屏幕截图,而不是整个页面?

Debomita Bhattacharjee
更新于 2020年10月26日 06:24:41

2K+ 次浏览

我们可以使用 Selenium webdriver 截取特定元素的屏幕截图,而不是整个页面。项目中可能需要截取特定 webelement 的屏幕截图。首先,我们将截取整个页面的屏幕截图,然后根据元素的尺寸和位置对其进行裁剪。我们将借助 TakeScreenShot 接口并使用其 getScreenshotAs 方法。语法:File i = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);接下来将图像存储在一个文件中(例如,.jpeg、.png)。FileUtils.copyFile(i, 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 java.io.File; ... 阅读更多

在 Selenium 中选择已知元素的父元素。

Debomita Bhattacharjee
更新于 2020年10月26日 06:22:49

12K+ 次浏览

我们可以使用 Selenium webdriver 选择已知元素的父元素。首先,我们必须使用任何定位器(如 id、classname 等)来识别已知元素。然后,我们必须使用 findElement(By.xpath()) 方法识别其父元素。我们可以通过使用子元素对其进行定位,然后将 ( ./..) 作为参数传递给 findElement(By.xpath()) 来从其子元素识别父元素。让我们从以下 HTML 代码中的 li 标签子元素识别 ul 标签父元素:我们还可以识别…… 阅读更多

使用 Selenium WebDriver for Python 等待页面加载完成。

Debomita Bhattacharjee
更新于 2020年10月26日 06:19:23

2K+ 次浏览

我们可以使用 Selenium webdriver 等待页面加载完成。Selenium 中有一个同步概念,它描述了隐式等待和显式等待。要等待页面加载完成,我们将使用显式等待的概念。显式等待的设计使其取决于特定元素行为的预期条件。为了等待页面加载完成,我们将对特定元素使用预期条件 presence_of_element_loaded。一旦等待时间过去,将抛出超时错误。为了实现显式等待条件,我们必须借助 WebDriverWait…… 阅读更多

使用 Python 在 Selenium 中运行 Javascript。

Debomita Bhattacharjee
更新于 2020年10月26日 06:16:07

659 次浏览

我们可以使用 Python 在 Selenium webdriver 中运行 Javascript。文档对象模型 (DOM) 可以借助 Javascript 与页面上的元素进行通信。Selenium 通过借助 execute_script 方法来执行 Javascript 命令。要执行的命令作为参数传递给该方法。某些操作(例如页面向下滚动)无法直接通过 Selenium 方法执行。这是借助 Javascript Executor 实现的。window.scrollTo 方法用于执行滚动操作。要沿 x 轴水平滚动的像素和要沿 y 轴垂直滚动的像素…… 阅读更多

如何使用 Selenium WebDriver 处理 Windows 文件上传?

Debomita Bhattacharjee
更新于 2020年10月26日 06:14:04

3K+ 次浏览

我们可以使用 Selenium webdriver 处理 Windows 文件上传。这是通过 sendKeys 方法实现的。我们首先需要识别执行文件选择的元素,并指定要上传的文件路径。这只适用于元素的 type 属性设置为 "file",且元素标签名为 "input" 的情况。下面的 HTML 代码显示了 type 属性值设置为 "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; public class WndsFileUpl{    public static void main(String[] args) {       System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");       WebDriver ... 阅读更多

广告