Iam使用WebDriverBackedSelenium和tyring来运行我的RC案例,我得到以下错误,
错误:
com.thoughtworks.selenium.SeleniumException:getElementTagName执行失败;缓存中不存在元素Backtrace:0x43f80e 0x4320ae 0x4327e1 0x4336dc 0x4347ba 0x4250e9 0x42ca6c 0x41a597 0x484df8 0x4861f2 0x486491 start_thread [0x7f615369dd8c] 0x7f6150cde04d(警告:服务器未提供任何堆栈跟踪信息);持续时间或超时:25毫秒构建信息:版本:'2.6.0',修订版:'13840',时间:'2011-09-13 14:55:30'系统信息:os.name:'Linux',os。 arch:'amd64',os.version:'2.6.38-10-generic',java.version:'1.6.0_22'驱动程序信息:driver.version:RemoteWebDriver at org.openqa.selenium.internal.seleniumemulation.SeleneseCommand。申请(SeleneseCommand.java:42)
使用的代码:
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
Selenium selenium = null;
capabilities.setCapability("chrome.binary", "/opt/google/chrome/google-chrome");
WebDriver driver = new ChromeDriver(capabilities);
selenium = new WebDriverBackedSelenium(driver,getCurrentSetupURL());
selenium.type(“id”,“value”) - 在此行中引发错误!
答案 0 :(得分:1)
您必须指定要写入的ID。假设您尝试登录用户。因此,在大多数情况下,登录页面HTML将如下所示:
<input type="text" id="username"></input>
<input type="password" id="password"></input>
为了填写这些命令,命令如下所示:
selenium.type("id=username", "username");
selenium.type("id=password", "password");
以上代码会在用户名字段中输入值username
,在密码字段中输入值password
如果您从未在代码中指定id
和value
,则显然会得到nullpointerException