目前我有Protractor v.5.1.1,Node.js v.6.10.0
所有量角器测试都在窗口控制台中工作,但是当我尝试从STS IDE运行它时,我得到以下错误.当然我做了'webdriver-manager update',但它根本没用.有谁知道如何解决这个问题?
当我使用或不使用'directConnect'时分别低于错误
[22:21:48] I/launcher - Running 1 instances of WebDriver
[22:21:48] I/direct - Using ChromeDriver directly...
[22:21:48] E/direct - Error code: 135
[22:21:48] E/direct - Error message: Could not find update-config.json. Run 'webdriver-manager update' to download binaries.
[22:21:48] E/direct - Error: Could not find update-config.json. Run 'webdriver-manager update' to download binaries.
at IError (D:\STS_workspace\jgh\node_modules\protractor\built\exitCodes.js:5:1)
at ProtractorError (D:\STS_workspace\jgh\node_modules\protractor\built\exitCodes.js:10:9)
at BrowserError (D:\STS_workspace\jgh\node_modules\protractor\built\exitCodes.js:51:9)
at Direct.getNewDriver (D:\STS_workspace\jgh\node_modules\protractor\built\driverProviders\direct.js:62:31)
at Runner.createBrowser (D:\STS_workspace\jgh\node_modules\protractor\built\runner.js:194:43)
at q.then.then (D:\STS_workspace\jgh\node_modules\protractor\built\runner.js:338:29)
at _fulfilled (D:\STS_workspace\jgh\node_modules\q\q.js:834:54)
at self.promiseDispatch.done (D:\STS_workspace\jgh\node_modules\q\q.js:863:30) …Run Code Online (Sandbox Code Playgroud) 我正在使用npm package webdriver-manager在机器上启动驱动程序.如果驱动程序已经启动,则会失败.
有没有办法可以停止并重新启动webdriver?或者像已经开始的那样忽略?
我是新手使用量角器.尝试安装独立webdriver-manager但出现以下错误.
Node v7.2.0
Protractor 5.0.0
webdriver-manager 11.1.1
Run Code Online (Sandbox Code Playgroud)
当我跑步时,webdriver-manger update --standalone我得到以下错误
[17:25:21] I/file_manager - creating folder C:\Users\AppData\Roaming\npm\node_modules\protractor\node_modules\webdriver-manager\selenium
[17:25:22] E/downloader - undefined
[17:25:22] I/update - chromedriver: file exists C:\Users\AppData\Roaming\npm\node_modules\protractor\node_modules\webdriver-manager\selenium\chromedriver_2.26win32.zip
[17:25:22] I/update - chromedriver: unzipping chromedriver_2.26win32.zip
**(node:14972) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Invalid filename
(node:14972) DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
[17:25:22] E/downloader - undefined
[17:25:22] I/update - …Run Code Online (Sandbox Code Playgroud) chromedriver 2.2和最新版本的Chrome似乎存在问题.此问题必须处理量角器无法使用2.2发送Tab键.如果我做webdriver-manager更新,它不会更新到chromedriver 2.4.我做了一个黑客,我自己下载了chromedriver 2.4 exe并手动将它放在selenium文件夹中,但这不是最好的方法.如何更新量角器以使用最新版本的Chromedriver 2.4?
When running webdriver-manager update, it downloads a file with -alpha-1.zip.jar. This does not appear to be the right file format. The example below is to just download the selenium standalone jar file:
> ./webdriver-manager update --standalone --chrome false --gecko false
webdriver-manager: using global installed version 12.1.1
[13:34:08] I/downloader - curl -o/path/to/selenium-server-standalone-4.0.0-alpha-1.zip.jar https://selenium-release.storage.googleapis.com/4.0/selenium-server-standalone-4.0.0-alpha-1.zip
Run Code Online (Sandbox Code Playgroud)
This is an invalid file when trying to run webdriver-manager start. What's going on and how do we fix this?
webdriver-manager update第一次执行时,总是会看到以下错误
PS H:\> webdriver-manager update
webdriver-manager: using global installed version 12.1.2
[09:55:15] I/config_source - curl -oC:\Users\myusername\AppData\Roaming\npm\node_modules\webdriver-manager\selenium\standalone-response.xml https://selenium-release.storage.googleapis.com/
[09:55:15] I/config_source - curl -oC:\Users\myusername\AppData\Roaming\npm\node_modules\webdriver-manager\selenium\chrome-response.xml https://chromedriver.storage.googleapis.com/
[09:55:15] I/config_source - curl -oC:\Users\myusername\AppData\Roaming\npm\node_modules\webdriver-manager\selenium\gecko-response.json https://api.github.com/repos/mozilla/geckodriver/releases
events.js:183
throw er; // Unhandled 'error' event
^
Error: read ECONNRESET
at TLSWrap.onread (net.js:622:25)
Run Code Online (Sandbox Code Playgroud)
但是,每当我再次运行它时,它总是成功执行。我仅在我目前的公司中经历过这种情况,而且我知道其他同事也会遇到这种情况,因此我认为它一定是代理人,但无法理解它以后如何成功通过。
我们将不胜感激任何关于如何更好地排除故障的解决方案或建议。
注意:我正在使用powershell执行命令
我正在泊坞窗文件中使用量角器(版本5.4.2)运行测试.google chrome升级到版本76后,测试开始失败并给出以下错误:
SessionNotCreatedError: session not created: Chrome version must be
between 71 and 75
[chrome #01-2] (Driver info: chromedriver=2.46.628388 (4a34a70827ac54148e092aafb70504c4ea7ae926),
platform=Linux 4.15.0-1040-aws x86_64)
Run Code Online (Sandbox Code Playgroud)
我尝试了几种方法来解决这个问题:
1)尝试将chrome版本标记为先前版本。但是chrome移至稳定版本,而先前版本为chrome。
2)还研究了一些可能的解决方案在线下载,但对我不起作用
3)webdriver-manager更新--versions.chrome 76.0.3809.68。仍然量角器5.4.2拾取了chrome驱动程序2.46
我想在chrome 75上运行测试,所以我需要降级chrome版本的方法,或者我想知道如何使量角器与chrome版本76兼容
到目前为止,我所做的是在本地使用webdriver-manager更新,当我运行测试时,它运行良好,但是当我在dockerFile中运行测试时,它也遵循清理和更新webdriver-manager的步骤,返回使用chrome驱动程序2.46。即使将webdriver清理干净也会删除chromedriver 76本身
npx webdriver-manager clean
webdriver-manager: using local installed version 12.1.6
[11:01:36] I/file_manager - removed chromedriver_76.0.3809.12
[11:01:36] I/file_manager - removed chromedriver_76.0.3809.12.zip
[11:01:36] I/file_manager - removed geckodriver-v0.24.0
[11:01:36] I/file_manager - removed geckodriver-v0.24.0.tar.gz
[11:01:36] I/file_manager - removed selenium-server-standalone-3.141.59.jar
[11:01:36] I/file_manager - removed chrome-response.xml
[11:01:36] I/file_manager - removed gecko-response.json
[11:01:36] I/file_manager - removed …Run Code Online (Sandbox Code Playgroud) 我有一个错误:
E selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 102
E Current browser version is 109.0.5414.120 with binary path C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
Run Code Online (Sandbox Code Playgroud)
我已经使用代码来获取最新版本的 webdriver-
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
options = webdriver.ChromeOptions()
options.add_argument("--allow-running-insecure-content")
options.add_argument("--ignore-certificate-errors")
options.set_capability("acceptInsecureCerts", True)
preferences = {"profile.default_content_settings.popups": 0,
"download.default_directory": r""+Constants.path+"",
# IMPORTANT - ENDING SLASH V IMPORTANT
"directory_upgrade": True}
options.add_experimental_option("prefs", preferences)
driver = webdriver.Chrome(executable_path=ChromeDriverManager().install(), options=options)
Run Code Online (Sandbox Code Playgroud)
使用相同的代码,我可以在本地计算机(即笔记本电脑)上运行此代码,但此代码无法在我的虚拟机上运行。两台机器上的 chrome 版本相同,即 - 109.0.5414.120。
请指导。
google-chrome python-3.x selenium-webdriver webdriver-manager webdrivermanager-python
我需要使用 selenium 和 Chrome 使用 python 访问网站。下面是我的代码的缩短版本。
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.service import Service
# PROXY='https://myproxy.com:3128'
PROXY = 'https://username:password@myproxy.com:3128'
proxyuser='username' #this is the proxy user name used in above string
proxypwd='password' #this is the proxy password used in above string
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--proxy-server=%s' % PROXY)
chrome_options.add_argument("ignore-certificate-errors");
chrome = webdriver.Chrome(options=chrome_options,service=Service(ChromeDriverManager().install()))
chrome.get("https://www.google.com")
while True:
print('ok')
Run Code Online (Sandbox Code Playgroud)
我位于需要身份验证的公司代理服务器后面。我不确定如何传递登录凭据和代理设置以安装 chromedriver 当上面的代码在没有代理的情况下运行时,它会按预期工作。但使用代理连接运行时出现如下错误:
[WDM] - ====== WebDriver manager ======
[WDM] - Current google-chrome version is 105.0.5195
[WDM] - Get LATEST chromedriver …Run Code Online (Sandbox Code Playgroud) 例外:
org.openqa.selenium.SessionNotCreatedException: session not created: This version of ChromeDriver only supports Chrome version 114
Current browser version is 116.0.5845.111 with binary path
Run Code Online (Sandbox Code Playgroud)
pom.xml
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>3.7.1</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
设置ChromeOptions并最终创建网络驱动程序的代码:
WebDriverManager.chromedriver().setup();
ChromeOptions options = new ChromeOptions();
options.addArguments("--no-sandbox");
options.addArguments("--test-type");
options.addArguments("--start-maximized");
if (setBrowserUI().equals("yes")) {
options.addArguments("--headless");
}
options.addArguments("Browser.setDownloadBehavior", "allow");
options.addArguments("--disable-extensions");
options.addArguments("--disable-dev-shm-usage");
options.setExperimentalOption("prefs", chromePrefs);
base.driver = new ChromeDriver(options);
Run Code Online (Sandbox Code Playgroud)
项目限制阻止了所使用的 Selenium 版本的升级。除了更新到 Selenium 版本 4.x 之外还有其他方法可以解决吗?
java selenium-chromedriver selenium-webdriver webdriver-manager
protractor ×6
selenium ×3
node.js ×2
webdriver ×2
java ×1
javascript ×1
json ×1
npm ×1
proxy ×1
python ×1
python-3.x ×1