1

QUnit テストを実行するページの静的 HTML テスト ハーネスであるブラウザー ページをロードしたいと考えています。

<span>成功/失敗から値を取得し、それらでテストしたいと思います。

ページをロードし、MSTest/MSUnit を使用して要素を調べるにはどうすればよいですか?

4

1 に答える 1

1

実際のブラウザを起動しても問題がなく、(C# に必要な) SeleniumRC に依存したくない場合は、WatiNを使用できます。以下は、WatiN の小さな例です。

[Test] 
public void SearchForWatiNOnGoogle()
{
  using (var browser = new IE("http://www.google.com"))
  {
    browser.TextField(Find.ByName("q")).TypeText("WatiN");
    browser.Button(Find.ByName("btnG")).Click();

    Assert.IsTrue(browser.ContainsText("WatiN"));
  }
}

または、マシンで実際のブラウザーを起動したくない場合は、Selenium と HtmlUnit を試すことができます。Selenium を使用すると、HtmlUnit を起動し、特定のページをロードするように指示し、必要なものを xpath 経由で読み取ります。たとえば、これはSelenium ドキュメントの例で、同様のことを行う方法です。

using OpenQA.Selenium;
using OpenQA.Selenium.Remote;

class Example
{
    static void Main(string[] args)
    {

        ICapabilities desiredCapabilities = DesiredCapabilities.HtmlUnit();
        IWebDriver driver = new RemoteWebDriver(desiredCapabilities);

        driver.Navigate().GoToUrl("http://google.ca/");

        IWebElement element = driver.FindElement(By.Name("q"));
        element.SendKeys("Cheese!");
        element.Submit();
        System.Console.WriteLine("Page title is: " + driver.Title);
        driver.Quit();
        System.Console.ReadLine();
    }
}  

ところで、セレンを使用すると、実際のブラウザーも使用できます。

一方、結果を含むこのページがローカル ファイルの場合は、ファイルを読み取って必要なデータをフィルター処理するだけです。

于 2011-02-17T20:11:15.213 に答える