= !BluePrint: Functional Testing Suite = [[TOC]] == Introduction == Creating an automated testing suite using [http://robotframework.org/ Robot Framework] which is configurable, easy to write, easy to maintain and provides in depth logs and reports.[[BR]] Functional testing needs to be an integrated part of the development process. A maintained suite of functional tests: * Captures user requirements in a useful way * Gives the team (users and developers) confidence that the system meets those requirements [[BR]] The current [http://eden.sahanafoundation.org/wiki/DeveloperGuidelines/Testing/Selenium Functional Testsuite] (using just selenium) has blurred lines between script action and code. The tests break often because they can not adapt to changes in requirements or system's implementation. The tests tend to become out of sync with either of them, people stop running the tests or stop trusting the results. [[BR]] This will add value to Sahanna as it will provide a handy and usable tool to script and run tests, to diagnose failures and to empower people to use and maintain the test suite. == Stakeholders == * Developers - They will be the users as well as maintainers of the suite. * People using Sahana Eden - They can see which all functionalities are working as expected. == User Stories == * A developer can use the suite to confirm that the system does what users are expecting it to and get quality in-depth report and logs to help fix the functionalities that are not behaving as expected. == Requirements == === Functional === * Detailed reports and logs. It should provide * Easy to understand * Tickets * Screenshots * Tracebacks * Summary reports * Logs of actions * The tests should give immediate feedback. * Complete system testing[?]. * Ability to add a single test as well as group of tests. * Ability to group tests by template and functionality. === Non-functional === http://en.wikipedia.org/wiki/Non-functional_requirements === Interoperability === === Standards === === System Constraints === == Design == === Data Model === (e.g. EER or class diagrams) === Workflows === === Site Map === === Wireframes === === Technologies === == Current Implementation == <*a brief description of the implementation (date/time, name, design options chosen)> <*a link to the code> <*list of deployments of the implementation> <*links to case studies> <*short analysis of achievements/problems> == Planned Implementation == == Future Extensions == == Outstanding Questions == == References == ---- BluePrint