自動テストツール③ Selenium2 3/5

using System.Drawing.Imaging;
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;

namespace Test
{
 [TestFixture]
  public class clsTest
  {
  
   [Test]
   public void Main()
   {
   
    ’Firefox起動。URLを指定&遷移。
    IWebDriver driver = new FirefoxDriver();
    driver.Url = “http://google.com”;
   
    ’指定のidの要素を取得。入力&Submit。
    IWebElement element =
      driver.FindElement(By.Id(“lst-ib”));
    element.SendKeys(“yahoo”);
    element.Submit();
   
    System.Threading.Thread.Sleep(2000);
   ’タイトルの値をテスト
   (期待値と実測値が違う場合、NUnitでエラーが表示される)
    Assert.AreEqual(“yahoo – Google 検索”, driver.Title);
  
   ‘ウィンドウのキャプチャを取る
    Screenshot shot =
      ((ITakesScreenshot)driver).GetScreenshot();
    shot.SaveAsFile(“firefox.png”, ImageFormat.Png);
  
   }
  }
}

Imports System.Drawing.Imaging
Imports NUnit.Framework
Imports OpenQA.Selenium
Imports OpenQA.Selenium.Firefox

<TestFixture()> _
Public Class clsTest

 <Test()> _
 Public Sub FireFoxTest()

  ’Firefox起動。URLを指定&遷移。
  Dim driver As IWebDriver = New FirefoxDriver
  driver.Url = “http://google.com”

  ’指定のidの要素を取得。入力&Submit。
  Dim element As IWebElement =
    driver.FindElement(By.Id(“lst-ib”))
  element.SendKeys(“yahoo”)
  element.Submit()

  Threading.Thread.Sleep(2000)

  ’タイトルの値をテスト
  (期待値と実測値が違う場合、NUnitでエラーが表示される)
  Assert.AreEqual(expected:=”yahoo – Google 検索”, _
      actual:=driver.Title, _
      message:=”Titleが違います。”)

  ’ウィンドウのキャプチャを取る
  Dim shot As Screenshot =
    DirectCast(driver, ITakesScreenshot).GetScreenshot()
  shot.SaveAsFile(“firefox.png”, ImageFormat.Png)

 End Sub
End Class