[Test]
public void 検索(){
var driver = new InternetExplorerDriver();
try {
driver.Navigate().GoToUrl("http://www.bing.com");
var txt条件 = driver.FindElementByName("q");
txt条件.Clear();
txt条件.SendKeys("Microsoft");
var btn検索 = driver.FindElementByXPath(
"//input[@type='submit' and @name='go']");
btn検索.Click();
var wait = new WebDriverWait(driver, new TimeSpan(0, 0, 10));
wait.Until(ExpectedConditions.TitleIs("Microsoft - Bing"));
var lbl件数 = driver.FindElementById("count");
Regex.Match(lbl件数.Text, "(?<=of ).*(?= results)").Value
.Is("527,000,000");
} finally {
driver.Quit();
}
}
9.
[TestFixture]
public class PageObjectTest{
[Test]
public void 検索() {
var driver = new InternetExplorerDriver();
try {
var instance = BingSearch.Create(driver);
instance.Input検索条件("Microsoft");
instance.Click検索();
instance.Get検索結果件数().Is("527,000,000");
} finally {
driver.Quit();
}
}
}
10.
public class BingSearch{
public static BingSearch Create(RemoteWebDriver driver) {
var instance = new BingSearch(driver);
driver.Url = "http://www.bing.com";
return instance;
}
private readonly RemoteWebDriver driver;
private BingSearch(RemoteWebDriver driver) {
this.driver = driver;
}
private IWebElement txt条件 {
get { return driver.FindElementByName("q"); }
}
private IWebElement btn検索 {
get { return driver.FindElementByXPath(
"//input[@type='submit' and @name='go']"); }
}
private IWebElement lbl件数 {
get { return driver.FindElementById("count"); }
}
11.
public void Input検索条件(string条件) {
this.txt条件.Clear();
this.txt条件.SendKeys(条件);
}
public void Click検索() {
this.btn検索.Click();
var wait = new WebDriverWait(this.driver, new TimeSpan(0, 0, 10));
wait.Until(ExpectedConditions.TitleIs("Microsoft - Bing"));
}
public string Get検索結果件数() {
return Regex.Match(this.lbl件数.Text,
"(?<=of ).*(?= results)").Value;
}
}
https://gist.github.com/1861739