QA/Tools/Selenium/AMO Automation

From MozillaWiki
< QA
Jump to: navigation, search

Selenium IDE/RC and AMO, or: How I Learned to Stop Worrying and Love Automation

Questions? Feedback/suggestions? Email


How to record and play back Selenium IDE scripts

Record the script(s) with Selenium IDE

Be sure to record relative, not absolute paths (i.e. /en-US/firefox/some/AMO/url/, rather than

When finished, File | Save Test Case As..., and be sure it has a .HTML extension

Download and unpack Selenium RC -- literally just extract the contents into their own new folder

In the root of your Selenium RC folder, create a folder called |htmlSuite|

Drop your |testcase.html| file(s) into the |htmlSuite| directory

In |htmlSuite|, create an HTML file called |testSuite.html|, following the markup in

Change the |href=| filename attributes to match each of your testcase's filename

From the command line, CD into the selenium-server folder (something like ~/Desktop/selenium-remote-control-1.0-SNAPSHOT/selenium-server-1.0-SNAPSHOT), and issue:

* java -jar selenium-server.jar -htmlSuite "*chrome" "" [1 -- just a footnote, don't enter me!] "/Users/stephend/Desktop/selenium-remote-control-1.0-SNAPSHOT/htmlSuite/testSuite.html" "/Users/stephend/Desktop/results.html" (substituting, of course, the folder name of your RC version and path/to/tests and path/to/results.html)

If all goes, well, your first testcase will begin running; when it's finished, it'll run the next testcase, and once that's completed, it'll quit Firefox and write out |results.html| -- sample results.html

[1] This is the base URL, and what your test scripts will key off of

Testcases I'm working on


Sounds great and all, but what does this do for / how does this help AMO?


The idea is not to regress critical things like search, other functionality/page views

Should let us focus on verifying new functionality works as expected

Rapid turnaround on automating user actions


Not a substitute for a unit test

Can't really test layout well

Want to use the |pause| command? Too bad; it apparently doesn't work :-(