Nikhil Kothari
Nikhil Kothari

Reputation: 5225

Automating Firefox and Chrome browsers

I am looking for a way to automate a couple of browsers like Firefox and Chrome (for now on just on Windows) from an external application/process.

Is there a way to do things along these lines:

  1. Start the browser with a URL
  2. Have the browser load the page, run scripts etc.
  3. Inspect the DOM

For reference, IE can be automated using the InternetExplorer.Application object which can be created in a shell script using the following JavasSript. I can then walk the DOM API:

var ie = new ActiveXObject('InternetExplorer.Application');

The motivating scenario here is automated testing. I'd like to load the page containing the test code and gather results after the test has run.

Upvotes: 21

Views: 22523

Answers (2)

Mike Mooney
Mike Mooney

Reputation: 11989

https://sourceforge.net/projects/watin/

WatiN does exactly that, and I believe they recently added Chrome support.

Update 6/22/2011:

Currrently WatiN only works on Firefox 2 and 3, not in Firefox 4 (and almost certainly not in Firefox 5, which was released today). Also, at the time of this answer, Chrome support was supposedly being added, but it looks like that never got fully baked and now is not listed as a supported platform on their home page.

Also worth noting, in my experience WatiN got a lot slower when I upgraded to IE9. I saw this on two different machines, and downgrading to IE8 sped the tests back up on both machines.

I still use WatiN heavily, but now mostly for behavior driven design and functional regression testing, which generally are not browser-specific. Then, manually test in FF and Chrome for all regression testing.

Update 9/22/2015:

Elmue is right, it looks like WatiN is no longer being worked on. We're looking into Selenium for our automated acceptance tests now: https://www.selenium.dev/

Upvotes: 11

Bobby Cannon
Bobby Cannon

Reputation: 6933

TestR will let you automated IE, FF, and Chrome. I've started working on Edge support but just haven't had the time.

https://github.com/BobbyCannon/TestR

You can use the nuget package.

https://www.nuget.org/packages/TestR/

Here is some examples.

https://docs.epiccoders.com/Page/35/TestR

Upvotes: 0

Related Questions