selenium-webdriver 相关问题

Selenium-WebDriver提供WebDriver API,用于控制不同编程语言的浏览器(“语言绑定”)。使用此标记时,还要为正在使用的编程语言添加标记。

如何在JAVA的selenium WebDriver中禁用图像/视频下载以及如何禁用CSS

我现在使用的是 Chrome WebDriver 最新版本(版本 129.0.6668.59(官方版本)(64 位))。 Chrome 驱动程序版本 129.0.6668.58 我想获取任何 URL 的标题或头部(Youtube、Instagram、

回答 1 投票 0

如何在 Android 浏览器中检查元素

我正在尝试检查 Android 浏览器中的一个元素,但找不到任何软件。 有人可以帮我吗?

回答 5 投票 0

Chrome 浏览器最新版本(129)在无头模式下会产生一个空白的白色窗口

无头模式下的 Chrome 会生成一个与浏览器大小相同的空白窗口。 var dS = ChromeDriverService.CreateDefaultService(); dS.HideCommandPromptWindow = true; var co = 新 ChromeO...

回答 1 投票 0

Selenium - 如何填充值并单击按钮

我今天开始使用硒,在查找这些元素并在第一个元素中填充值并单击第二个元素时遇到问题。 我今天开始使用硒,在查找这些元素并在第一个元素中填充值并单击第二个元素时遇到问题。 <input class="inputDefault-_djjkz input-cIJ7To" name="username" type="text" placeholder="Che nome vuoi usare?" maxlength="999" value=""> <input class="inputDefault-3JxKJ2 input-3ITkQf" type="checkbox" style="width: 24px; height: 24px;"> 这是我的代码 from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC # Content to fill - <input class="inputDefault-_djjkz input-cIJ7To" name="username" type="text" placeholder="Che nome vuoi usare?" maxlength="999" value=""> # {"method":"css selector","selector":"[name="Che nome vuoi usare?"]"} # Checkbox - <input class="inputDefault-3JxKJ2 input-3ITkQf" type="checkbox" style="width: 24px; height: 24px;"> driver = webdriver.Chrome() driver.get("https://discord.gg/NGvXRfrmUE") name = driver.find_element_by_class_name("inputDefault-_djjkz input-cIJ7To").send_keys("Test") button = driver.find_element_by_class_name("inputDefault-3JxKJ2 input-3ITkQf").click 我第一次遇到这个例外 selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":".inputDefault-_djjkz input-cIJ7To"} 这是第二个 selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":".inputDefault-3JxKJ2 input-3ITkQf"} 既然name可用,你应该使用name attribute。 driver.find_element_by_name('username').send_keys("Test") 我可以在最后看到这个 HTML : <input class="inputDefault-_djjkz input-cIJ7To inputField-4g7rSQ" name="email" type="text" placeholder="" aria-label="Email or Phone Number" autocomplete="off" maxlength="999" spellcheck="false" value=""> 所以这里name是email,所以应该尝试一下: driver.find_element_by_name('email').send_keys("Test") 更新1: driver.get("https://discord.com/invite/NGvXRfrmUE") driver.maximize_window() wait = WebDriverWait(driver, 10) wait.until(EC.element_to_be_clickable((By.NAME, "username"))).send_keys('Test') 进口: from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC 如果您想用硒填充输入文本,请参阅以下示例: def TextInputField(inputId, inputValue): input = browser.find_element(By.ID, inputId) input.click() input.clear() input.send_keys(inputValue) time.sleep(1) 在此示例中,我创建了一个函数,该函数获取输入的 Id,然后单击它,清除它并用值填充它。 您可以在这里看到文档:https://selenium-python.readthedocs.io/ located-elements.html

回答 2 投票 0

从 docker 容器发送通知报告

我正在 Docker 容器中进行 Selenium 测试用例,并需要向我的 Slack 频道发送包含报告的通知。可以这样做吗?如果是这样的话,谁能提供...

回答 0 投票 0

Chrome 版本 128.X.X.X 不接受证书

我正在使用 Selenium 和 Java 来测试 Web 应用程序。 手动访问网络应用程序时,我会收到一个弹出窗口来选择证书文件。此弹出窗口中只有 1 个证书文件,这也是可用的...

回答 1 投票 0

使用数据提供程序和@Parameter的Appium并行设备

上下文: 我的代码(登录测试用例)已经通过并且它在并行设备中运行 用户凭据来自@DataProvider(通过的测试使用相同的凭据) 我想要什么: 使用

回答 1 投票 0

Chrome 更新后 Selenium headless 崩溃了

本周末更新 google chrome 后,使用 Selenium python API 的无头模式在 Windows 中运行时会弹出一个空白窗口。 我在 Debian VM 上运行的相同代码不...

回答 1 投票 0

无法在 NUnit 测试运行器中将 ExtentReportManager 附加为 ITestListener

说明: 我正在致力于将 Extent Reports 与 NUnit 集成到我的自动化框架中,旨在捕获详细的测试执行日志和屏幕截图。这个想法是创建一个结构化的 Ext...

回答 1 投票 0

“错误无法启动新会话。”在 selenium-remote-driver 版本 4.17.0 及更高版本上,驱动程序在版本 4.16.1 上按预期启动

我的项目pom: 我的项目pom: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>rs.a1.automation</groupId> <artifactId>test-automation-framework</artifactId> <version>2.9</version> <properties> <aspectj.version>1.9.22.1</aspectj.version> <project.java.version>21</project.java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> </properties> <dependencies> <dependency> <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api --> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.24.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core --> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.24.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-slf4j2-impl/ --> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j2-impl</artifactId> <version>2.24.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java --> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>4.19.1</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-http-jdk-client --> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-http-jdk-client</artifactId> <version>4.13.0</version> </dependency> <!-- <dependency> &lt;!&ndash; https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-api &ndash;&gt;--> <!-- <groupId>org.seleniumhq.selenium</groupId>--> <!-- <artifactId>selenium-api</artifactId>--> <!-- <version>4.16.1</version>--> <!-- </dependency>--> <dependency> <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-remote-driver --> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-remote-driver</artifactId> <version>4.17.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/io.github.bonigarcia/webdrivermanager --> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.9.2</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/org.testng/testng --> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>7.10.2</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/org.assertj/assertj-core --> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <version>3.26.3</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-maven --> <groupId>io.qameta.allure</groupId> <artifactId>allure-maven</artifactId> <version>2.14.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-testng --> <groupId>io.qameta.allure</groupId> <artifactId>allure-testng</artifactId> <version>2.29.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-assertj --> <groupId>io.qameta.allure</groupId> <artifactId>allure-assertj</artifactId> <version>2.29.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-attachments --> <groupId>io.qameta.allure</groupId> <artifactId>allure-attachments</artifactId> <version>2.29.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-commandline --> <groupId>io.qameta.allure</groupId> <artifactId>allure-commandline</artifactId> <version>2.30.0</version> <exclusions> <exclusion> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> </exclusion> </exclusions> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml --> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>5.3.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.17.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/com.github.javafaker/javafaker --> <groupId>com.github.javafaker</groupId> <artifactId>javafaker</artifactId> <version>1.0.2</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc --> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <version>12.8.1.jre11</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc11 --> <groupId>com.oracle.database.jdbc</groupId> <artifactId>ojdbc11</artifactId> <version>23.2.0.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core --> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.17.0</version> </dependency> <dependency> <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind --> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.17.0</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.13.0</version> <configuration> <source>${project.java.version}</source> <target>${project.java.version}</target> <encoding>${project.build.sourceEncoding}</encoding> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>3.0.0</version> <configuration> <mainClass>rs.a1.automation.test.RunTests</mainClass> <arguments> <argument>-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"</argument> </arguments> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>2.2.1</version> <executions> <execution> <id>package-jar-with-dependencies</id> <phase>package</phase> <goals> <goal>single</goal> </goals> <configuration> <appendAssemblyId>false</appendAssemblyId> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <mainClass>rs.a1.automation.test.RunTests</mainClass> </manifest> </archive> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>3.0.0-M7</version> <configuration> <argLine> -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar" </argLine> </configuration> <dependencies> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>${aspectj.version}</version> <scope>runtime</scope> </dependency> </dependencies> </plugin> <plugin> <groupId>io.qameta.allure</groupId> <artifactId>allure-maven</artifactId> <version>2.13.0</version> <configuration> <reportVersion>2.30.0</reportVersion> </configuration> </plugin> </plugins> </build> </project> 我的chrome版本: 129.0.6668.59(官方版本)(64位)(早期版本也出现该问题) 我收到的 selenium-remote-driver 版本 4.17.0 及更高版本的错误消息: INFO Using chromedriver 129.0.6668.58 (resolved driver for Chrome 129) INFO Exporting webdriver.chrome.driver as C:\Users\xxxxxxxx\.cache\selenium\chromedriver\win64\129.0.6668.58\chromedriver.exe ERROR Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure. Host info: host: 'xxxxxxxxxxxxx', ip: 'xxxxxxxxxxxxxx' Build info: version: '4.19.1', revision: 'abe0ee07dc' System info: os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '21.0.4' Driver info: org.openqa.selenium.chrome.ChromeDriver Command: [null, newSession {capabilities=[Capabilities {browserName: chrome, goog:chromeOptions: {args: [], extensions: [Q3IyNAMAAAAZBAAAEqwECqYCMII...]}}]}] at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:537) at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:233) at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:162) at org.openqa.selenium.chromium.ChromiumDriver.<init>(ChromiumDriver.java:114) at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:89) at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:84) at rs.a1.automation.core.WebDriverActions.startChromeDriver(WebDriverActions.java:82) at rs.a1.automation.core.WebDriverActions.createDriver(WebDriverActions.java:61) at rs.a1.automation.core.WebDriverActions.createDriver(WebDriverActions.java:36) at rs.a1.automation.scenarios.ChangeTariff.setUp(ChangeTariff.java:33) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:141) at org.testng.internal.invokers.MethodInvocationHelper.invokeMethodConsideringTimeout(MethodInvocationHelper.java:71) at org.testng.internal.invokers.ConfigInvoker.invokeConfigurationMethod(ConfigInvoker.java:400) at org.testng.internal.invokers.ConfigInvoker.invokeConfigurations(ConfigInvoker.java:333) at org.testng.internal.invokers.TestInvoker.runConfigMethods(TestInvoker.java:833) at org.testng.internal.invokers.TestInvoker.invokeMethod(TestInvoker.java:600) at org.testng.internal.invokers.TestInvoker.invokeTestMethod(TestInvoker.java:230) at org.testng.internal.invokers.MethodRunner.runInSequence(MethodRunner.java:63) at org.testng.internal.invokers.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:992) at org.testng.internal.invokers.TestInvoker.invokeTestMethods(TestInvoker.java:203) at org.testng.internal.invokers.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:154) at org.testng.internal.invokers.TestMethodWorker.run(TestMethodWorker.java:134) at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) at org.testng.TestRunner.privateRun(TestRunner.java:739) at org.testng.TestRunner.run(TestRunner.java:614) at org.testng.SuiteRunner.runTest(SuiteRunner.java:421) at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:413) at org.testng.SuiteRunner.privateRun(SuiteRunner.java:373) at org.testng.SuiteRunner.run(SuiteRunner.java:312) at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:95) at org.testng.TestNG.runSuitesSequentially(TestNG.java:1274) at org.testng.TestNG.runSuitesLocally(TestNG.java:1208) at org.testng.TestNG.runSuites(TestNG.java:1112) at org.testng.TestNG.run(TestNG.java:1079) at rs.a1.automation.core.TestNGXmlBuilder.runTestNGXml(TestNGXmlBuilder.java:114) at rs.a1.automation.test.RunTests.main(RunTests.java:13) Caused by: java.lang.NoClassDefFoundError: org/openqa/selenium/remote/http/HttpHeader at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:110) at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:95) at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:67) at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:162) at org.openqa.selenium.remote.service.DriverCommandExecutor.invokeExecute(DriverCommandExecutor.java:216) at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:174) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:519) ... 38 more Caused by: java.lang.ClassNotFoundException: org.openqa.selenium.remote.http.HttpHeader at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) ... 45 more 我为重现此问题所做的唯一更改是在我的 pom 中从 4.16.1 更改为 4.17.0 我实例化chromedriver的方法: private void startChromeDriver() { //using Java 11 HTTP client, avoiding the Netty library which uses the now obsolete AsyncHttpClient System.setProperty("webdriver.http.factory", "jdk-http-client"); WebDriverManager.chromedriver().setup(); ChromeOptions options = new ChromeOptions(); options.addExtensions(new File(".\\src\\test\\resources\\pdfviewer.crx")); driver = new ChromeDriver(options); browserCapabilities = ((RemoteWebDriver) driver).getCapabilities(); javascriptExecutor = (JavascriptExecutor) driver; } 我在互联网上广泛搜索,查看了硒更改日志和提交,但无法找到解决方案...... 经过广泛的搜索,我发现这个问题包含解决我的问题的评论,如果将来有人遇到类似的问题,请将其留在这里:) https://github.com/SeleniumHQ/selenium/issues/13568

回答 1 投票 0

Python Selenium 在使用 Firefox 时出现 Error@chrome

我收到这个奇怪的错误: 引发 TimeoutException(消息、屏幕、堆栈跟踪) selenium.common.exceptions.TimeoutException:消息: 堆栈跟踪: RemoteError@chrome://remote/content/shared/

回答 1 投票 0

'[Errno 13] 权限被拒绝:'/.wdm'。'在 ec2 上使用 selenium 时

这是我的硒代码: 从硒导入网络驱动程序 从 selenium.webdriver.common.keys 导入密钥 从 selenium.webdriver.common.by 导入 从 selenium.webdriver.chrome.service 导入 Se...

回答 1 投票 0

带身份验证的 Selenium 代理

我必须使用硒和带有身份验证的代理。 我有一些限制 我不能使用硒线(只允许使用纯硒) 我必须使用无头模式(例如 chrome_options.add_argument...

回答 2 投票 0

Jmeter Selenium 插件 - 无法启动新会话

我想在 Jmeter 测试中使用 Selenium 采样器。然而,我遇到了一个令人费解的问题,即浏览器拒绝启动。我将 jp@gc - Edge Driver Config 放在我的线程组中 在顶部...

回答 1 投票 0

使用 Python 抓取嵌入在网站上的 powerBI 报告

我正在尝试从该网站上抓取数据:https://www.transport.nsw.gov.au/data-and-research/drives-reporting-portal/registration-snapshot-report(如果您点击第2页(共2页),您可以看到...

回答 2 投票 0

在 Chrome 中使用 Selenium 和 Python 下载 PDF:禁用 PDF 查看器

我目前看到的内容我正在尝试单击按钮后下载 pdf,但默认情况下 Chrome 将使用 PDF 查看器。我已经实现了以下代码,这似乎停止了竞争...

回答 1 投票 0

Chromedriver 更新 (129.0) 未隐藏窗口

我的窗口隐藏代码适用于所有 chromedriver 版本,但不再起作用。 它不适用于最新的 129 更新。 我的硒版本:4.0.0b3 和旧的解决方案: 选项 = webdr...

回答 1 投票 0

我的 For Each Loop 如何循环到下一行?

For Each 循环不是循环到下一行并应用我的代码,而是从同一行的下一个单元格开始。 我是 VBA 的初学者,我的所有代码都来自互联网。我正在与

回答 1 投票 0

Chrome 129 Headless 显示空白窗口

今天,我将Chrome浏览器更新到最新版本(129)。更新后,在无头模式下运行 Chrome 会产生不寻常的结果:出现一个空白的白色窗口,与

回答 1 投票 0

JMeter WebDriver Sampler:升级到 WebDriver 4.13.0.1 后,Groovy 脚本出现“无效调用序列”错误

我使用 JMeter 5.6.3 和 WebDriver Sampler 版本 4.13.0.1 以及 Groovy 进行脚本编写。升级到此版本后,我开始遇到以下错误: 2024-09-17 19:30:23,748 错误...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.