Selenium for Cosmo UI Testing
Communication: freenode: #QA, #selenium still small but growing as there are many users with questions. (Selenium is poorly document, which I have been working on as well as actively answering questions in the channels.)
Selenium IDE/ Recorder
Recording works for text boxes and static links, form submission needs to manually done with the click events and the center div for the submission button. None of the calendar events can be seen by the recorder and drag drop/double click and many other mouse events are out of range for the recorder. Helpful for filling out text fields and drop down boxes and navigating to new URLS.
Browsers: Currently working on Safari, IE 6, Mozilla (Firefox and Camino)
Changes to Selenium API:
1.Addition of double click to Selenium Core and
BrowserBot? prototype object for each browser
2.Additions in storing variable data with Java
3.Drag and drop function additions (Fixing broken magic)
Other Modifications:
1.Wrapper in progress (for calling Cal.eventRegistry.getX().id) in Suites
2.Verify Functionality
3.Submission using div buttons instead of form submit
Issues:
1.Drag a div and drop on another div (Kills javascript in browser: timeout)
2.Drag and drop by coordinates, works but conflicts with snap to grid functionality
3.Running with IE on a remote machine yields permissions errors
Paths
Currently Selenium is in the osaf-server-bundle/tomcat/webapps/ROOT/selenium/ directory and accessed by localhost:8080/selenium/. Each of the tests reference /, if they used the absolute path the test would break when being run from a remote machine.
Methods in Detail
http://wiki.osafoundation.org/bin/view/Journal/AdamChristianSeleniumMethods
Testable Features
1.Register test user
2.Login as test user
3.Create events
4.Create overlapping events
5.Create events on multiple days at varying times
6.Make events all day
7.Drag and Drop Events
8.Editing Event properties
9.Removing Events
10.Log out
11.Login to Cosmo as root, remove test user.