FAILED Selenium2Library

在Robot Framework中尝试使用Selenium2Library时遇到错误:无法导入GLOBAL_VARIABLES。该问题可能与安装配置或版本兼容性有关。

FAILED Selenium2Library Importing test library 'Selenium2Library' failed: ImportError: cannot import name GLOBAL_VARIABLES
Traceback (most recent call last):
File "D:\PY2.7\lib\site-packages\robotide\lib\robot\utils\importer.py", line 143, in _import
return import(name, fromlist=fromlist)
File "D:\PY2.7\lib\site-packages\robotframework_selenium2library-1.5.0-py2.7.egg\Selenium2Library__init__.py", line 2, in
from keywords import *
File "D:\PY2.7\lib\site-packages\robotframework_selenium2library-1.5.0-py2.7.egg\Selenium2Library\keywords__init__.py", line 1, in
from _logging import _LoggingKeywords
File "D:\PY2.7\lib\site-packages\robotframework_selenium2library-1.5.0-py2.7.egg\Selenium2Library\keywords_logging.py", line 3, in
from robot.variables import GLOBAL_VARIABLES
PYTHONPATH:
D:\PY2.7\lib\site-packages\wx-2.8-msw-unicode
D:\PY2.7\lib\site-packages\wx-2.8-msw-unicode
D:\PY2.7\Lib\idlelib
D:\PY2.7\lib\site-packages\setuptools-23.1.0-py2.7.egg
D:\PY2.7\lib\site-packages\pip-8.1.2-py2.7.egg
D:\PY2.7\lib\site-packages\robotframework-3.0-py2.7.egg
D:\PY2.7\lib\site-packages\robotframework_selenium2library-1.5.0-py2.7.egg
D:\PY2.7\lib\site-packages\docutils-0.12-py2.7.egg
D:\PY2.7\lib\site-packages\selenium-2.53.6-py2.7.egg
D:\PY2.7\lib\site-packages\decorator-4.0.10-py2.7.egg
C:\Windows\system32\python27.zip
D:\PY2.7\DLLs
D:\PY2.7\lib
D:\PY2.7\lib\plat-win
D:\PY2.7\lib\lib-tk
D:\PY2.7
D:\PY2.7\lib\site-packages
D:\PY2.7\lib\site-packages\robotide\spec

Traceback (most recent call last):
[Errno 10053]
File "D:\PY2.7\lib\site-packages\robotide\spec\librarymanager.py", line 40, in run
if not self._handle_message():
File "D:\PY2.7\lib\site-packages\robotide\spec\librarymanager.py", line 66, in _handle_message
self._handle_insert_keywords_message(message)
File "D:\PY2.7\lib\site-packages\robotide\spec\librarymanager.py", line 93, in _handle_insert_keywords_message
keywords = self._fetch_keywords(library_name, library_args)
File "D:\PY2.7\lib\site-packages\robotide\spec\librarymanager.py", line 83, in _fetch_keywords
print 'FAILED', library_name, err
File "D:\PY2.7\lib\idlelib\PyShell.py", line 1356, in write
return self.shell.write(s, self.tags)
File "D:\PY2.7\lib\idlelib\rpc.py", line 545, in getattr
self.__getmethods()
File "D:\PY2.7\lib\idlelib\rpc.py", line 563, in __getmethods
"methods", (), {})
File "D:\PY2.7\lib\idlelib\rpc.py", line 210, in remotecall
seq = self.asynccall(oid, methodname, args, kwargs)
File "D:\PY2.7\lib\idlelib\rpc.py", line 225, in asynccall
self.putmessage((seq, request))
File "D:\PY2.7\lib\idlelib\rpc.py", line 332, in putmessage
n = self.sock.send(s[:BUFSIZE])

20160701 15:09:19.027 [ERROR]: Error in listener: C++ assertion "m_count == -1 || m_count == -2" failed at ....\src\msw\textctrl.cpp(140) in UpdatesCountFilter::UpdatesCountFilter(): wrong initial m_updatesCount value
While handling <robotide.publish.messages.RideLogMessage object at 0x00000000092655F8>

Traceback (most recent call last):
C++ assertion "m_count == -1 || m_count == -2" failed at ....\src\msw\textctrl.cpp(140) in UpdatesCountFilter::UpdatesCountFilter(): wrong initial m_updatesCount value
File "D:\PY2.7\lib\site-packages\robotide\publish\publisher.py", line 88, in call
self.listener(data)
File "D:\PY2.7\lib\site-packages\robotide\log\log.py", line 85, in _log_message
self._window.update_log()
File "D:\PY2.7\lib\site-packages\robotide\log\log.py", line 129, in update_log
self.SetValue(self._decode_log(self._log))
File "D:\PY2.7\lib\site-packages\wx-2.8-msw-unicode\wx_controls.py", line 1754, in SetValue
return controls.TextCtrl_SetValue(*args, **kwargs)

转载于:https://www.cnblogs.com/ITniu/p/5881389.html

### 解决 Maven 中 Selenium-Support Jar 包传输失败的问题 当遇到 `selenium-support` 的 Maven 依赖无法成功下载的情况时,可以尝试以下方法来解决问题。 #### 方法一:检查本地仓库路径设置 确保 `.m2/repository` 文件夹下的目录结构未被破坏或损坏。如果发现文件缺失或者不完整,可以直接删除对应版本的整个 `selenium-support` 文件夹并重新构建项目[^1]。这样会强制 Maven 下载最新的依赖项。 #### 方法二:验证网络连接与代理配置 有时由于网络原因可能导致某些资源不可访问。可以通过修改 `settings.xml` 配置文件中的镜像地址指向国内可用源(如阿里云),从而提高稳定性。例如: ```xml <mirrors> <mirror> <id>aliyun</id> <name>Aliyun Repository</name> <url>https://maven.aliyun.com/repository/public</url> <mirrorOf>*</mirrorOf> </mirror> </mirrors> ``` 此操作有助于绕过国外服务器可能存在的延迟或封锁问题[^3]。 #### 方法三:手动添加所需 JAR 到本地库 如果自动方式始终失败,则可以选择手工导入必要组件到本地存储位置。具体步骤如下: 1. 前往官方站点 [MVNRepository](https://mvnrepository.com/) 查找目标版本; 2. 下载相应压缩包解压至指定区域; 3. 使用命令行工具执行下面语句完成注册过程: ```bash mvn install:install-file -Dfile=<path-to-file>/selenium-support-3.141.59.jar \ -DgroupId=org.seleniumhq.selenium \ -DartifactId=selenium-support \ -Dversion=3.141.59 \ -Dpackaging=jar ``` 通过上述手段能够有效规避远程获取过程中产生的异常状况[^4]。 #### 示例 POM.XML 配置片段 以下是标准形式下包含支持模块在内的完整声明实例供参考: ```xml <dependencies> <!-- Core Library --> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>3.141.59</version> </dependency> <!-- Additional Support Functions --> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-support</artifactId> <version>3.141.59</version> </dependency> </dependencies> ``` 注意两者需保持一致版本号以便兼容性考虑[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值