我想知道如何打開瀏覽器到特定的網頁,然後填寫該頁面上的框的一些內容。打開瀏覽器並填寫一些數據
我的想法是有人能夠從我們的內部訂購系統訂購特定物品。這些項目的條形碼將填充我想要打開的頁面上的字段。
我不能,我可以打開一個新的實例,即使用Process.Start("IEXPLORE.EXE", url);
我怎麼得到一個處理完全即實例窗口,所以我可以開始將所需的數據添加到字段?
這甚至可能嗎?
非常感謝
我想知道如何打開瀏覽器到特定的網頁,然後填寫該頁面上的框的一些內容。打開瀏覽器並填寫一些數據
我的想法是有人能夠從我們的內部訂購系統訂購特定物品。這些項目的條形碼將填充我想要打開的頁面上的字段。
我不能,我可以打開一個新的實例,即使用Process.Start("IEXPLORE.EXE", url);
我怎麼得到一個處理完全即實例窗口,所以我可以開始將所需的數據添加到字段?
這甚至可能嗎?
非常感謝
WatiN應該幫助與此有關。我通常使用它來進行Web應用程序的驗收測試,但原理是一樣的。打開一個瀏覽器實例,在DOM中引用東西,操作表單元素等。
除了WatiN(正如在另一個答案中所建議的),您可能會考慮一個像Web Performance Load Tester這樣的負載測試包。他們有一個免費版本,允許您一次運行多達10個虛擬用戶,這將執行腳本操作。
另一種選擇是使用標準WebBrowser對象來加載您的網站。 WebBrowser對象允許您訪問和更改某些Web部件。以下是自動搜索Bing的示例代碼:
private void LoadPage()
{
WebBrowser webBrowser1 = new WebBrowser();
webBrowser1.Navigate("http://www.bing.com");
//Wait for document to load...
while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
{
Application.DoEvents();
}
//Set the text of the search input
HtmlElement txtTextField = webBrowser1.Document.GetElementById("sb_form_q");
txtTextField.InnerText = "My test text";
//Perform a click on the search button
HtmlElement btnSubmit = webBrowser1.Document.GetElementById("sb_form_go");
btnSubmit.InvokeMember("click");
}
目標網頁是否在您的控制之下? – Farinha 2011-05-12 15:30:16
它在我們的內部網絡上,但我不控制它 – rik 2011-05-12 15:31:46
我要建議在查詢字符串中傳遞參數。如果它在內部網絡上,它可能是可行的。 – Farinha 2011-05-12 15:34:38