1
我想加載一個瀏覽器頁面,該頁面是運行QUnit測試的頁面的靜態HTML測試工具。使用MSTest/MSUnit獲取QUnit結果
我想從成功/失敗<span>
s中獲得數值,並用這些數值進行測試。
如何使用MSTest/MSUnit加載頁面和查詢元素?
我想加載一個瀏覽器頁面,該頁面是運行QUnit測試的頁面的靜態HTML測試工具。使用MSTest/MSUnit獲取QUnit結果
我想從成功/失敗<span>
s中獲得數值,並用這些數值進行測試。
如何使用MSTest/MSUnit加載頁面和查詢元素?
如果您不介意啓動實際的瀏覽器,並且您不想依賴於SeleniumRC(C#需要),則可以使用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 documentation如何做同樣的事情:
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();
}
}
BTW硒可以使用真正的瀏覽器也。
另一方面,如果此頁面的結果是本地文件,則您只需讀取該文件,並過濾需要的數據。
你能移動WatiN到這個答案的頂部,因爲它更簡單,更清潔。 – StuperUser 2011-02-18 10:42:29