Selenium IDE - Select Google 的自动填充选项
Selenium IDE - Select Googles Autofill Options
我正在尝试编写一个测试,select 是 Google 中的第一个自动完成选项,select 是 "I feel Lucky" link 中的第一个自动完成选项。我的第一个想法是 select 搜索栏,然后滚动到第一个结果并按 Tab 键转到正确的 link。但是我似乎无法将焦点放在搜索栏上。
波纹管是我目前所拥有的:
http://i.imgur.com/GytuR2B.png
提前致谢!
看起来 google 使用 href="#ifl" 作为 I feel lucky 的标识符。你可以通过将鼠标悬停在你想使用的任何东西上找到它,右键单击它,然后 select "Inspect element" 而在 google chrome 中。它将调出 hmtl,以便您可以查看实际元素的名称。
public void IFL()
{
driver.Url = "https://www.google.com/?gws_rd=ssl";
IWebElement element = driver.FindElement(By.CssSelector("[id*='lst-ib']"));
element.SendKeys("Hello W");
Thread.Sleep(1000);
var luck = driver.FindElements(By.CssSelector("[href*='#ifl']"));
IWebElement ifl = luck[0];
Actions action = new Actions(driver);
action.MoveToElement(ifl).Build().Perform();
Thread.Sleep(1000);
ifl.Click();
}
我们select所有"I feel Lucky"元素,然后选择第一个(也就是第一个link),将鼠标移动到那个位置,然后点击。
这不是最简洁的方法,但它应该可以满足您的需要。
编辑:
我看到你现在正在使用 IDE 你应该可以使用 MouseOver href=#ifl 然后点击。
这是我搜索术语 "first" 和 select 第一个下拉选项时想到的。
从 http://google.com
开始
<tr>
<td>type</td>
<td>id=lst-ib</td>
<td>first</td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//ul[@role='listbox']/li</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//ul[@role='listbox']/li/div</td>
<td></td>
</tr>
对我来说,目前没有我感到幸运的选择。但如果有那会很容易。否则你select第一个搜索结果:
<tr>
<td>click</td>
<td>//h2[text()='Search Results']/..//ol/div//li//a</td>
<td></td>
</tr>
我正在尝试编写一个测试,select 是 Google 中的第一个自动完成选项,select 是 "I feel Lucky" link 中的第一个自动完成选项。我的第一个想法是 select 搜索栏,然后滚动到第一个结果并按 Tab 键转到正确的 link。但是我似乎无法将焦点放在搜索栏上。
波纹管是我目前所拥有的: http://i.imgur.com/GytuR2B.png
提前致谢!
看起来 google 使用 href="#ifl" 作为 I feel lucky 的标识符。你可以通过将鼠标悬停在你想使用的任何东西上找到它,右键单击它,然后 select "Inspect element" 而在 google chrome 中。它将调出 hmtl,以便您可以查看实际元素的名称。
public void IFL()
{
driver.Url = "https://www.google.com/?gws_rd=ssl";
IWebElement element = driver.FindElement(By.CssSelector("[id*='lst-ib']"));
element.SendKeys("Hello W");
Thread.Sleep(1000);
var luck = driver.FindElements(By.CssSelector("[href*='#ifl']"));
IWebElement ifl = luck[0];
Actions action = new Actions(driver);
action.MoveToElement(ifl).Build().Perform();
Thread.Sleep(1000);
ifl.Click();
}
我们select所有"I feel Lucky"元素,然后选择第一个(也就是第一个link),将鼠标移动到那个位置,然后点击。
这不是最简洁的方法,但它应该可以满足您的需要。
编辑:
我看到你现在正在使用 IDE 你应该可以使用 MouseOver href=#ifl 然后点击。
这是我搜索术语 "first" 和 select 第一个下拉选项时想到的。 从 http://google.com
开始<tr>
<td>type</td>
<td>id=lst-ib</td>
<td>first</td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//ul[@role='listbox']/li</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//ul[@role='listbox']/li/div</td>
<td></td>
</tr>
对我来说,目前没有我感到幸运的选择。但如果有那会很容易。否则你select第一个搜索结果:
<tr>
<td>click</td>
<td>//h2[text()='Search Results']/..//ol/div//li//a</td>
<td></td>
</tr>