Changes between Version 5 and Version 6 of QA
- Timestamp:
- 01/04/13 04:04:22 (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
QA
v5 v6 14 14 == Automated Tests == 15 15 16 === Smoke Tests === 17 Smoke Tests click through on every link within Sahana Eden and can be used to check for errors on pages and broken links. They are a light-weight approach to detecting basic errors, however they do not test form submission or any interaction. 18 To run the Smoke Tests: 19 {{{ 20 python web2py.py -S eden -M -R applications/eden/modules/tests/suite.py -A --suite smoke --force-debug --link-depth 16 -V 3 21 }}} 22 ''Add details on the dependancies for these'' 23 24 === Selenium Tests === 25 Selenium Tests use the [http://seleniumhq.org/docs/03_webdriver.jsp Selenium WebDriver] to simulate user interactions within a browser. They are very thorough as they test interactions in the entire Sahana Eden stack including JS, but can also be fragile (detect false negatives). 26 To run all the Selenium Tests: 27 {{{ 28 python web2py.py -S eden -M -R applications/eden/modules/tests/suite.py 29 }}} 30 See: [wiki:QA/Automated/Selenium Automated Tests - Selenium] for more details 31 16 32 === Unit Tests === 17 There are additional unit tests available, which also require running with the IFRC_Train preopulate, 'settings.base.prepopulate = 27': 18 19 To run all unit tests:33 Unit Tests can be used to test whether specific "Units" of code are working. They are used extensively to test the Sahana Eden "S3" Framework. 34 Unit Tests require running with the IFRC_Train preopulate, 'settings.base.prepopulate = 27': 35 To run all Unit Tests: 20 36 {{{ 21 37 python web2py.py -S eden -M -R applications/eden/modules/unit_tests/suite.py … … 36 52 It can be a very powerful development strategy - especially for back-end APIs - to first implement unit test cases for the functionality you intend to implement before actually implementing it. Apart from preventing bugs, this helps you to validate your design against requirements, and to keep the implementation simple and focussed. Additionally, the test cases can be a rich source of code samples how to apply your API methods. 37 53 38 === Smoke Tests ===39 {{{40 python web2py.py -S eden -M -R applications/eden/modules/tests/suite.py -A --suite smoke --force-debug --link-depth 16 -V 341 }}}42 43 === Selenium Tests ===44 {{{45 python web2py.py -S eden -M -R applications/eden/modules/tests/suite.py46 }}}47 See: [wiki:QA/Automated/Selenium Automated Tests - Selenium] for more details48 49 54 === Role Tests === 50 This test is used to check the permissions of user roles. Currently is limited to the IFRC (Red Cross) roles for RMS, but could be extended: 55 Role tests are used to check the permissions of user roles. Currently is limited to the IFRC (Red Cross) roles for RMS, but could be extended: 56 To run the Role Tests: 51 57 {{{ 52 58 python web2py.py -S eden -M -R applications/eden/modules/tests/suite.py -A --suite roles … … 54 60 55 61 === Benchmark Tests === 56 The Benchmark Tests are a simple way of measuring the performance 62 The Benchmark Tests are a simple way of measuring the performance of the Sahana Eden "S3" Framework. The result of these tests will give you a measure of the performance relative to the system running them. 63 To run the Benchmark Tests: 57 64 {{{ 58 65 python web2py.py -S eden -M -R applications/eden/modules/unit_tests/s3/benchmark.py … … 63 70 64 71 == Continuous Integration (CI)Server == 72 The CI Server will constantly run all Automated Tests on the latest version of Sahana Eden to detect any defects. 65 73 See: SysAdmin/ContinuousIntegration for how we have set up the CI Server and help to find the exact commands to run the tests. 66 74