- The Application Server (and the application you are testing)
- The Web Server
- The web browser (client)
- The Selenium Server
- The Selenium Client
- Application Server
- Web Server
- Windows XP, Internet Explorer 6, Selenium Server #1
- Windows Vista, Internet Explorer 7, Selenium Server #2
- Windows 7, Internet Explorer 8, Selenium Server #3
- Linux, Firefox 3.5, Selenium Server #4
- Mac OS X, Safari 4.0, Selenium Server #5
- Build Machine with Test Suite
- Database
- Subversion repository with application and test suite source code
Here is how communication will flow:
- Machine #8 will check out the code from machine #10
- Machine #8 will compile the application
- Machine #8 will tell machine #1 to stop the application server
- Machine #8 will deploy the application to the application server
- Machine #8 will make any necessary changes to the database
- Machine #8 will tell machine #1 to start the application server
- Machine #8 will compile the test suite code
- Machine #8 will start the Selenium Server on machines 3, 4, 5, 6 and 7
- Machine #8 will run, in parallel, five copies of the test suite, each one configured to point to a different test machine
- Assuming the test runner used on step 9 creates test results, machine #8 will save the test results.
- If may also send an email to interested parties
During step 9 there will be the following call in the Test Suite:
Selenium selenium = new DefaultSelenium(seleniumServer, seleniumPort, browser, baseURL);
where seleniumServer/seleniumPort is the IP address and network port of the machine running the test. If we have this parameter configurable, we can configure the parameter to the selenium server on machine 3 then run it, configure the parameter to machine 4 then run it again, and so on.
The browser parameter would be "*iexplore" for machines 3, 4, 5, "*firefox" for machine 6 and "*safari" for machine 7. The baseURL is going to be the URL for machine #2, which redirects HTTP requests to our application on machine #1.
If your test code is written in Java, everything can be done so long as some version of Java is installed on all the machines. You could even test your application on Firefox and Solaris 10.
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.