Question

I'm trying to get the following code to work using both Watin and HttpWatch.

I'm getting a compile error of 'The type or namesapce 'IEBrowser' could not be found (are you missing a using directive or an assembly reference?)

I have HttpWatch, Interop.SHDocVw, WatiN.Core, and Microsoft.mshtml referenced. I'm not sure what else is wrong?

The below code is what I'm using and was taken from http://blog.httpwatch.com/2008/10/30/using-httpwatch-with-watin/

I really need to get Watin and HttpWatch working together in same project so I can monitor server performance.

Thanks!

using System;
using System.Collections.Generic;
using System.Text;
using WatiN.Core;

namespace WatiN
{
    class Program
    {
        [STAThread]
        static void Main(string[] args)
        {
            // Open a new Internet Explorer window and
            // goto the google website.
            IE ie = new IE("http://www.google.com");

            // Attach HttpWatch to this new instance of IE
            HttpWatch.Controller ct = new HttpWatch.Controller();

            // the below line was supposedly for Watin 1.3
            //HttpWatch.Plugin plugin = ct.IE.Attach((SHDocVw.IWebBrowser2)ie.InternetExplorer);

            // the below line is for Watin 2.x
            HttpWatch.Plugin plugin = ct.IE.Attach((IEBrowser)ie.NativeBrowser).WebBrowser;

            // Start recording a log file in HttpWatch
            plugin.Record();

            // Find the search text field and type Watin in it.
            ie.TextField(Find.ByName("q")).TypeText("WatiN");

            // Click the Google search button.
            ie.Button(Find.ByValue("Google Search")).Click();
            ie.WaitForComplete();

            // Stop recording and save an HttpWatch log file
            plugin.Stop();
            plugin.Log.Save(@"c:\mydir\googlesearch.hwl");

            HttpWatch.Summary logSummary = plugin.Log.Entries.Summary;

            Console.WriteLine("\r\nElapsed time (secs) = " + logSummary.Time.ToString() +
                              " Downloaded bytes = " + logSummary.BytesReceived.ToString());

            // Uncomment the following line if you want to close
            // Internet Explorer and the console window immediately.
            //ie.Close();
        }
    }
}
Was it helpful?

Solution

HttpWatch now comes with a sample program showing you how to use WatiN 2.1 with HttpWatch:

http://blog.httpwatch.com/2012/06/25/using-httpwatch-and-watin-2-1/

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top