diff options
author | Morgan Richomme <morgan.richomme@orange.com> | 2017-05-19 08:37:34 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2017-05-19 08:37:34 +0000 |
commit | 9b36089c6a5f01e0770351d0e93b5f34410248a3 (patch) | |
tree | ac815016209734a67911a88240411fa43a3668ac /docs/testing/developer/internship/unit_tests/index.rst | |
parent | 5a36bcdef5ce8840322cbdfca6b4f93f7e12967e (diff) | |
parent | 2fd62f5b80c1025c65ea04c63bfc96e4d5e69a2a (diff) |
Merge "Documentation for unit test project"
Diffstat (limited to 'docs/testing/developer/internship/unit_tests/index.rst')
-rw-r--r-- | docs/testing/developer/internship/unit_tests/index.rst | 76 |
1 files changed, 66 insertions, 10 deletions
diff --git a/docs/testing/developer/internship/unit_tests/index.rst b/docs/testing/developer/internship/unit_tests/index.rst index f969aa72..a117c860 100644 --- a/docs/testing/developer/internship/unit_tests/index.rst +++ b/docs/testing/developer/internship/unit_tests/index.rst @@ -25,41 +25,98 @@ Version history | **Date** | **Ver.** | **Author** | **Comment** | | | | | | +------------+----------+------------------+------------------------+ -| 2016-??-?? | 0.0.1 | Morgan Richomme | Beginning of the | +| 2016-11-14 | 0.0.1 | Morgan Richomme | Beginning of the | | | | (Orange) | Internship | +------------+----------+------------------+------------------------+ +| 2017-03-31 | 0.0.2 | Ashish Kumar | During the | +| | | (IIIT Hyderabad) | Internship | ++------------+----------+------------------+------------------------+ Overview: ========= - +Functest project is developing and integrating functional test cases for OPNFV +and it is part of OPNFV since the beginning. Functest develops its own testcases +and framework. This framework includes several utility libraries. The Project is +growing rapidly with more features, tests added as per requirement. It becomes +the responsibility of every developer to maintain the integrity of code i.e. new +patch should not break the previous functionality of the project. To automate this +process of software development, we should write unit tests and add them to CI so +that when a new patch is ready to merge, we shouldn't allow those which are breaking +previous unit tests or decreasing the coverage. Problem Statement: ------------------ - +The goal of the intership consists in creating unit test suites on Functest code +with good code coverage (>80%) and integrate it in continuous integration in order +to consolidate existing code. Curation Phase -------------- +The curation phase was the first 3 to 4 weeks of the internship. This phase was to get +familiar with the functest code and functionality and explore the solutions for unit +testing in other projects and come up with the strategy for writing unit tests in functest. - +In this phase we decided, +- Coverage should be 80%. There are some functions like __init__, getter, setter and other + private methods for which writing unit test is a tedious job, so we are leaving these methods + for now. +- Do method wise testing for every module. +- Use mock for external or third party services, system calls and other external library calls + which could impact the behaviour of system during the run of unit test. +- Add it in jenkins as passing criteria for patches. +- Write tests in modular way so that it can help to serve as a form of documentation. Schedule: ========= - - - +--------------------------+------------------------------------------+ | **Date** | **Comment** | | | | +--------------------------+------------------------------------------+ -| December - January | ........ | +| Nov 14th - Nov 28th | 1. Learn Functest Project Business | +| | 2. Set up the development environment | +| | 3. Run Functest code | ++--------------------------+------------------------------------------+ +| Nov 28th - Dec.9th | 1. Explore Unit Testing Strategy, | +| | 2. Learn about Mock in python | ++--------------------------+------------------------------------------+ +| Dec 12th - Dec 23rd | Implement Unit Tests for CLI | +| | | ++--------------------------+------------------------------------------+ +| Dec 26th - Jan 6th | Implement Unit Tests for Utils | +| | | ++--------------------------+------------------------------------------+ +| Jan 9th - Jan 20th | Implement Unit Tests for CI | +| | | ++--------------------------+------------------------------------------+ +| Jan 23rd - Feb 3rd | Implement Unit Tests for Core | +| | | ++--------------------------+------------------------------------------+ +| Feb 6th - Feb 17th | Implement Unit Tests for | +| | opnfv_tests/openstack/tempest | +--------------------------+------------------------------------------+ -| January - february | ........ | +| Feb 20th - Mar 3rd | Implement Unit Tests for | +| | opnfv_tests/openstack/rally | ++--------------------------+------------------------------------------+ +| Mar 6th - Mar 17th | Implement Unit Tests for | +| | opnfv_tests/vnf/ims | ++--------------------------+------------------------------------------+ +| Mar 20th - Mar 31st | Recheck and Increase Coverage for all | +| | modules > 80% | ++--------------------------+------------------------------------------+ +| Apr 3rd - Apr 14th | Add CI Gating for unit tests | +| | | ++--------------------------+------------------------------------------+ +| Apr 17th - Apr 28th | Use Tox Utility, Documentation | +| | | ++--------------------------+------------------------------------------+ +| Apr 28th - End | Bug Fixing | +| | | +--------------------------+------------------------------------------+ @@ -67,4 +124,3 @@ References: =========== .. _`[1]` : https://wiki.opnfv.org/display/DEV/Intern+Project%3A+Functest+unit+tests - |