2K+ 次浏览
我们将探讨学习 Selenium 的先决条件。首先,我们应该知道测试可以分为两部分:手动测试和自动化测试。对于手动测试,必须对我们要测试的应用程序有基本的了解,具备一定的敏锐度和良好的文档编写能力。对于自动化测试,我们应该学习和掌握基本的测试技能以及自动化测试的概念。除此之外,我们还应该了解以下主题:数据库、编程逻辑、数据结构、前端开发。现在让我们看看在基本的测试概念下我们应该了解哪些主要主题…… 阅读更多
284 次浏览
Selenium webdriver 的工作原理如下图所示:来源图片:https://tutorialspoint.com/what−is−web−driver−in−selenium Selenium webdriver 包含以下组件:Selenium 绑定语言 - Selenium 可以使用多种语言,例如 Java、Python、C#、Ruby 等,因为它对所有这些语言都有绑定。JSON Wire 协议 - JavaScript 对象表示法称为 JSON Wire 协议。它将数据从服务器分发到客户端页面。它基于 REST API,在 HTTP 服务器内携带信息。浏览器驱动程序 - 每个浏览器都有一个驱动程序,通过它建立通信。作为…… 阅读更多
393 次浏览
Mocha 和 Selenium 之间的区别如下所示:对比功能MochaSelenium用途它是一个简单易用且流行的 JavaScript 框架,专为 Node.js 开发。它是一个免费的自动化工具,用于测试 Web。语言基于 JavaScript。可以与多种语言一起使用,例如 Java、Python、C#、Ruby、JavaScript 等。用法用于集成、单元和端到端测试。用于基于 Web 的自动化测试。XUnit 框架它包含 XUnit 报告程序,该程序会生成 XML 文档。它不能与 XUnit 框架一起使用。浏览器主要支持 Chrome 和 Firefox。它可以用于其他浏览器,但存在某些挑战。支持大多数浏览器,例如 Chrome、Firefox、Safari、IE 等…… 阅读更多
4K+ 次浏览
我们可以使用 Selenium webdriver 检查 HTTP 响应标头。要验证 HTTP 标头,我们应该从源获取响应。一些 HTTP 响应代码列在下面:5XX - 代表服务器问题。4XX - 代表资源检测问题。3XX - 代表响应重定向。2XX - 代表正确代码。HttpURLConnection 类用于获取 HTTP 响应代码。要链接到 URL,使用 openConnection 方法。然后,我们必须使用 setRequestMethod 方法并将 HEAD 作为参数传递给它。connect 方法应用于 HttpURLConnection 类的对象。最后,…… 阅读更多
我们可以使用带有 Python 的 Selenium webdriver 自动从弹出对话框下载文件。单击下载链接后,将出现一个对话框,供用户选择各种选项来保存文件。我们必须以编程方式配置下载要执行的路径,以便每次启动 Firefox 浏览器时,Firefox 配置文件都适合在所需位置执行下载。打开 Firefox 的地址栏,输入 about:config 并按 Enter 键。所有浏览器首选项都将提供“编辑”和“切换”按钮。我们将使用 Firefox 选项…… 阅读更多
1K+ 次浏览
我们可以为 Selenium webdriver 添加自定义 ExpectedConditions。当 webdriver 提供的默认预期条件不足以满足某些场景时,我们需要此自定义 ExpectedConditions。使用 until 方法,它是 WebDriverWait 类的一部分。在这里,ExpectedConditions 用于等待满足特定条件。此方法会在发生以下事件之一时暂停:指定的超时持续时间已过期。定义的条件既不产生 false 也不是 null。我们可以通过创建预期条件的对象并借助 apply 方法来获得自定义 ExpectedCondition。让我们以…… 阅读更多
我们可以在 Mac OS 上使 Firefox 与 Selenium webdriver 一起工作。对于高于 47 的 Firefox 版本,需要使用 geckodriver.exe 文件。只有在创建 FirefoxDriver 类的对象后,我们才能启动浏览器。语法WebDriver driver=new FirefoxDriver();访问链接:https://www.seleniumcn.cn/downloads/ 并转到“浏览器”部分。单击 Firefox 下面的“文档”链接。在“支持的平台”页面中,单击“geckodriver 版本”链接。然后单击与 Mac OS 对应的链接。下载完成后,解压缩文件并将 geckodriver.exe 文件保存到 /usr/local/bin 位置。与 Windows 一样,我们不需要…… 阅读更多
我们可以使用 Selenium webdriver 使 Chrome 中的所有声音静音。要使音频静音,我们必须为浏览器设置参数。对于 Chrome,我们将使用 ChromeOptions 类。我们将创建一个 ChromeOptions 类的对象。然后利用该对象调用 addArguments 方法。然后传递 -mute-audio 作为参数给该方法。最后,将此信息发送到驱动程序对象。语法ChromeOptions op = new ChromeOptions(); op.addArguments("−−mute−audio"); WebDriver d = new ChromeDriver(op);对于 Firefox,我们将使用 FirefoxOptions 类并为该类创建一个对象。然后利用该对象调用 addPreference 方法并传递 media.volume_scale…… 阅读更多
12K+ 次浏览
我们可以使 Selenium 等待 10 秒。这可以通过使用 Thread.sleep 方法来完成。在这里,等待时间(10 秒)作为参数传递给该方法。我们也可以在 Selenium 中使用同步概念来等待。有两种等待方式:隐式等待和显式等待。两者都是动态的,但是隐式等待应用于自动化的每个步骤,显式等待仅适用于特定元素。示例使用 sleep 方法的代码实现。import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; public class WaitThrd{ public static void main(String[] args) throws…… 阅读更多
231 次浏览
我们可以使用 Python 中的 Selenium webdriver 最大化浏览器窗口。在运行测试时最大化浏览器是一个良好的实践,可以减少失败的可能性。浏览器最大化后,大部分元素都可见,与驱动程序交互的概率也增加了。此外,使用最大化浏览器,用户可以更好地查看页面上的元素。最大化浏览器的一些方法:使用 maximize_window 方法语法:driver.maximize_window()使用 fullscreen_window 方法语法:driver.fullscreen_window()示例使用 maximize_window() 的代码实现from selenium import webdriver # 设置 chromedriver.exe 路径driver = webdriver.Chrome(executable_path="C:\chromedriver.exe") # 最大化浏览器driver.maximize_window()driver.get("https://tutorialspoint.com/index.htm")driver.close()示例使用 ... 阅读更多