User Tools

Site Tools


testing_overview

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
testing_overview [2016/05/24 21:44]
Michael Jaeger
testing_overview [2016/05/24 21:45] (current)
Michael Jaeger
Line 77: Line 77:
 === 1.4 Test Infrastructure === === 1.4 Test Infrastructure ===
  
-== 1.4.1 *Test Organization==+== 1.4.1 Test Organization ==
  
 The FOSSology source code is organized so that each agent has all the needed components for its operation in its source tree.  This includes the unit and functional tests for that agent and associated Makefiles to drive the necessary test creation and execution. ​ See [[Module Structure]] for details. The FOSSology source code is organized so that each agent has all the needed components for its operation in its source tree.  This includes the unit and functional tests for that agent and associated Makefiles to drive the necessary test creation and execution. ​ See [[Module Structure]] for details.
  
-== 1.4.2 *Makefiles==+== 1.4.2 Makefiles ==
  
 Each module has a high-level Makefile and lower-level Makefiles to drive testing, whether it be unit or functional, with associated _test_ targets. ​ If both unit and functional testing is desired, the high-level Makefile is invoked from the module'​s root directory which in turn calls the lower-level Makefiles to run the tests. ​ If only one type of testing is desired, the lower-level Makefile is invoked directly with its _test_ target and only that test is executed. ​ In this way, a developer has complete control over what gets run in his sandbox, and the Continuous Integration server has the necessary granularity to run the desired tests whenever it wants. Each module has a high-level Makefile and lower-level Makefiles to drive testing, whether it be unit or functional, with associated _test_ targets. ​ If both unit and functional testing is desired, the high-level Makefile is invoked from the module'​s root directory which in turn calls the lower-level Makefiles to run the tests. ​ If only one type of testing is desired, the lower-level Makefile is invoked directly with its _test_ target and only that test is executed. ​ In this way, a developer has complete control over what gets run in his sandbox, and the Continuous Integration server has the necessary granularity to run the desired tests whenever it wants.
  
-== 1.4.3 *Test Data==+== 1.4.3 Test Data ==
  
 TBD TBD
-* A basic database that the tests can query with known-good data + * A basic database that the tests can query with known-good data 
-* A common test repo that the tests can use+ * A common test repo that the tests can use
  
 The test database/​repo should not have any dependencies on any system value or configuration outside of the sandbox; in other words, all information to make the tests work should either be checked into the sandbox that gets created or created by the high-level test target as a matter of initiation. ​ There shouldn’t be any dependencies on any other system file to run within the sandbox. The test database/​repo should not have any dependencies on any system value or configuration outside of the sandbox; in other words, all information to make the tests work should either be checked into the sandbox that gets created or created by the high-level test target as a matter of initiation. ​ There shouldn’t be any dependencies on any other system file to run within the sandbox.
  
-== 1.4.4 *Reports==+== 1.4.4 Reports ==
  
 All tests produce output in junit format for test reporting; if one of the existing test frameworks are not used, then whatever is used must produce a xml report in junit format. The definition for the junit report format can be found on the fossology wiki at: http://​fossology.org/​test:​junit_format. All tests produce output in junit format for test reporting; if one of the existing test frameworks are not used, then whatever is used must produce a xml report in junit format. The definition for the junit report format can be found on the fossology wiki at: http://​fossology.org/​test:​junit_format.
Line 103: Line 103:
 </​code>​ </​code>​
  
-== 1.4.5 *Test Documentation==+== 1.4.5 Test Documentation ==
  
 All tests should be documented using doxygen. Test documentation is needed for a number of reasons. All tests should be documented using doxygen. Test documentation is needed for a number of reasons.
testing_overview.1464126250.txt.gz · Last modified: 2016/05/24 21:44 by Michael Jaeger