summaryrefslogtreecommitdiffstats
path: root/functest/core
AgeCommit message (Collapse)AuthorFilesLines
2018-02-28Rename all Functest refs to XtestingCédric Ollivier6-783/+0
It mainly renames python modules and then the related documentation config files. Change-Id: I186010bb88d3d39afe7b8fd1ebcef9c690cc1282 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-22Use constants for Functest config fileCédric Ollivier1-2/+2
env_file can't be defined in a config file simply because it's an entry point (Jenkins jobs, end users) Change-Id: Ie23c0ef90efc839d60f0f3a9754c58746b1f3a00 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-16Get properly env vars or their default valuesCédric Ollivier1-9/+7
It defines env.get() as an unique way to get Functest env vars or their default values. It can be considered as a wrapper above os.environ. It enforces backward compatibility via CONST which mustn't be used for that purpose. It should be noted that it also stops using CONST for getting OpenStack env vars. Change-Id: I333dc1afbc0123166a7eaff8b551370098efa341 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-15Add suffixes to OpenStack resource namesCédric Ollivier1-3/+4
All vnf testcases have to add suffixes in OpenStack resources names simply because the password is now generated before any run [1]. Snaps mainly creates the resource only if unfound in all tenants [2]. Then one remaining resource could easily raise permissions denied. It avoid conflicts between vrouter and cloudify_ims which are using the same names. [1] https://gerrit.opnfv.org/gerrit/#/c/50747/ [2] https://jira.opnfv.org/browse/SNAPS-257 Depends-On: If56cc44fe35ca06bc9033af620ddd3c0586877fe Change-Id: I1800886e575189b64fdc580a5ee6b59c81fcde5c Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-09Unlink robotframework from constantsCédric Ollivier1-3/+2
Change-Id: Ic2c6c84c3824ec3fa208824ae67f1769d4e18c4f Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-09Unlink feature from constantsCédric Ollivier1-3/+2
Saving results dir as class attribute seems better in the context of xtesting. Change-Id: If40303d07d3be9bdc09d990f560cbeda429fd642 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-09Unlink vnf from constantsCédric Ollivier1-26/+24
It generates a default description which all testcases can easily override. Change-Id: I81b97c394cf064088767cc934295602f01a7f739 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-07Add variablefile as possible robot.run() argsCédric Ollivier1-2/+4
Change-Id: Ic80840957b4d9c3c4a1615696a2851f3f5bf7bf4 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-05Stop printing data sent to DBCédric Ollivier1-1/+1
https://build.opnfv.org/ci/view/functest/job/functest-daisy-baremetal-daily-master/lastFailedBuild/console Change-Id: I0f794159d05fe21f659ecf3b5a9fa407620b723d Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-01Rename a common credential file for OS and K8SLinda Wang1-1/+1
Change-Id: Ib8d24be4b29ab1de00d5dd5e3442146b2437cb94 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2018-01-26Fix last Pylint error in FunctestCédric Ollivier1-2/+1
It also fixes all pylint warnings in router and the related unit tests. tox.ini is updated to ensure that no error is introduced. Change-Id: Iddd74b0dac7b6581d72b04369140006c9e19f998 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-01-21Move push_results_to_db to TestCaseCédric Ollivier1-14/+57
It removes the link between TestCase and Functest utils (xtesting). It should be noted that testresults url can only be set by env var. Co-Authored-By: Cédric Ollivier <cedric.ollivier@orange.com> Change-Id: Ie072c675890d0ae2e63619c599d2684a8c7d762d Signed-off-by: Jose Lausuch <jalausuch@suse.com> Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-01-20Configure password for the user in vnfLinda Wang1-1/+2
For some SUTs, the password for creating user is not allowed to be the same as user name, and some even is required to contain at least 8 characters and three types of characters for security. It also turns yamllint warnings into errors and fixes the remaining warnings. Change-Id: Icf25a7b9ff1c8cee55899198f1e519c9209877ff Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-12-27Execute feature command by subprocess directlyLinda Wang1-4/+7
Change-Id: I77e86af4e96310c6520d743e4d16c9a7b2e9adf5 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-12-20Remove logger_test_resultsCédric Ollivier1-3/+0
It was only called in Feature which the result is already printed (see __str__()). It also eases moving Feature to xtesting as it breaks the link to functest_utils. Change-Id: Ib72d651dc7d89598704ff4d52d8b1ecb2bdade5b Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-12-19Delete TestCase.create_snapshot()Cédric Ollivier1-11/+0
OSGC has been removed then this method can be safely removed. It also updates run_tests.py. Change-Id: I4030b7f0351d24d095313ae990b08e65d8f69115 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-12-19Remove OSGCTestCaseCédric Ollivier1-33/+2
This class is no longer used and must be removed before working on xtesting. JIRA: FUNCTEST-887 Change-Id: I3ac1db6ec90d9db301e5461cd79cfcf77291dffc Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-11-27Create RobotFramework classCédric Ollivier1-0/+125
It moves the capability to run any robot script from ODL TestCase into a new class: RobotFramework. It updates ODL TestCase and the related unit tests to inherit from the new parent class. Change-Id: I73e59ee9652fb63d9d89d7c75c58cce9cf62b0d7 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-11-21Removal of deprecated SNAPS-OO classes.spisarski1-4/+6
JIRA: SNAPS-202 Change-Id: I115b4927b287a5525f4c1b95128d91f5229c7856 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-10-10Complete framework documentation part for VNFMorgan Richomme1-11/+8
Change-Id: I4c59adfe1cfec278e0b267cc7a05e8addd45d034 Signed-off-by: Morgan Richomme <morgan.richomme@orange.com>
2017-09-06Create VNF user with admin roleAlex Yang1-6/+8
Change-Id: I9cdeedd90cacfdae10c498580493106a6cb727fb Signed-off-by: Alex Yang <yangyang1@zte.com.cn>
2017-09-05Fix the cloudify_ims update quotas errorLinda Wang1-2/+1
Change-Id: I62376dd02dd95ebff54c1ebf963267c6534181ed Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-09-04More support of snaps for VNFboucherv1-22/+36
Remove OpenStack utils in vnf_base Support snaps for quotas management in cloudify_ims Change-Id: I44e5b01bb26569276133e85dfc25bc2cceb03056 Signed-off-by: boucherv <valentin.boucher@orange.com>
2017-07-03[cloudify_ims] Support Cloudify 4.0boucherv1-15/+19
- Delete all shell commands to use cloudify python lib - Cloudify Manager installation with a packaged image - SNAPS integration - Adapt test_vnf unit tests - Initiate test cloudify_ims unit tests (to be completed) JIRA: FUNCTEST-838 Change-Id: Ia4b499d4155e6af5d37d6d5cf4310a5a9693c7ce Signed-off-by: boucherv <valentin.boucher@orange.com> Signed-off-by: Morgan Richomme <morgan.richomme@orange.com>
2017-06-21Define logger as Feature instance attributeJose Lausuch1-0/+18
It allows any Feature subclass to print warning messages in console and debug messages in a dedicated file. Co-Authored-By: Cédric Ollivier <cedric.ollivier@orange.com> Change-Id: Ic5b1b1184c16cf50f0baadc3904075d0acdf3c6d Signed-off-by: Jose Lausuch <jose.lausuch@ericsson.com> Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-06-14Update Suite details pushed to DBCédric Ollivier1-2/+5
It now reports stats and dumps stream into details. By the way, it fixes a bug when serializing the former details. Change-Id: Idd388708071ca3185e5a07bc7e977f2d9837dc95 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-06-06Refactor core VNF classMorgan Richomme1-186/+148
- Simplify processing - Implement run method to inherit testcase methods - Add unit tests - Fix all pylint issues It also obliges vnf and its uts to be rated 10/10 by pylint. JIRA: FUNCTEST-830 Co-Authored-By: Cédric Ollivier <cedric.ollivier@orange.com> Change-Id: I8dd24eea55089277c9e5b2b51fb14dc377f2fcaf Signed-off-by: Morgan Richomme <morgan.richomme@orange.com> Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-30Fix a typo in docstringCédric Ollivier1-1/+1
Change-Id: Ie03004474658bd3317a9be8a6b00f5bda1133f2c Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-30Define create_snapshot() and clean() in TestCaseCédric Ollivier1-0/+50
They replace the former calls in run_tests which are not suitable for all test cases. Now any test case can define how to clean its resources. If the snapshot cannot be created, the test case is considered as failed. Only a message is printed if any failure during cleaning. It also defines a new class called OSGCTestCase useful for test cases which don't clean their OpenStack resources. All test cases located in opnfv_tests/openstack inherit from it to keep the global behavior unchanged. It also deletes exit instructions in openstack_clean and openstack_snapshot, removes clean flags in testcases.yaml and updates the related utils. All Docs are modified as well. JIRA: FUNCTEST-438 Change-Id: I8938e6255708012380389763a24059ace4ce45d8 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-29Rename logger to __logger in unit.pyCédric Ollivier1-5/+6
This mangling ensures that all info messages printed from core packages. Change-Id: I77ac1c80360d45ef19ed7c3fa05a894804c92216 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-29Protect against self.suite = NoneCédric Ollivier1-8/+12
Change-Id: Ie3370ebfdd51b9aff707e50b754ca52796e49fbf Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-23Add docstrings in unitCédric Ollivier2-11/+34
It also adds shebang and conforms the copyright header with the related OPNFV template. Change-Id: Iacb0cc8629e3021181eef2e8cb76daf48601abf4 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-23Rename the class TestSuiteRunner to SuiteCédric Ollivier1-2/+2
It conforms with [1]. [1] https://gerrit.opnfv.org/gerrit/#/c/35211/ Change-Id: I11bbdcd63a1691835fb7c6198549edbaf6b758a1 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-23Rename pytest_suite_runner.py to unit.pyCédric Ollivier1-0/+0
It also adds the rst files to include this module in apidoc. Change-Id: Iabbb17bc8601265bd9436c75d1afc0b470df1eb4 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-19Precise self.result in pytest_suite_runner.pyCédric Ollivier1-29/+13
It also adds the related unit tests. Change-Id: I8325bd9a55c69b229e3c48a9e64aa963e685e03d Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-18Use logger instead of printing in consoleCédric Ollivier1-3/+13
It modifies pytest_suite_runner.py to dump unit test results in functest.log via logging. Change-Id: Ic4e7567c5e52e00ad0e485ccb070029b135041b2 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-18Fix 2 issues related to logger in pytest_suite_runer.pyCédric Ollivier1-3/+1
logging.ini requires the full name otherwise all log messages are lost. Calling basicConfig() is useless as it has been correctly configured by run_tests.py before. Change-Id: I03663c01f795b1b844239a9e24379faa529829aa Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-18Allow running unittest.TestCase via run_tests.pyCédric Ollivier1-0/+5
pytest_suite_runner can run any unittest.TestCase thanks to name passed as run arg. Here is the related functest/ci/testcases.yaml: run: module: 'functest.core.pytest_suite_runner' class: 'PyTestSuiteRunner' args: name: 'functest.tests.unit.odl.test_odl' Change-Id: I7c2c611c4afbad1e52bfdca4a3288ccc21491389 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-17Update self.result value to INTjose.lausuch1-4/+4
So far, the test cases are storing a string "PASS" "FAIL" in the self.result variable. The way the new framework works is with INT Values. Change-Id: I45e8693327740faadd8254b21569adfb2cefa6c8 Signed-off-by: jose.lausuch <jose.lausuch@ericsson.com>
2017-05-17Merge "Fix an unorderable types error (if python 3)"Jose Lausuch1-0/+1
2017-05-17Fix an unorderable types error (if python 3)Cédric Ollivier1-0/+1
Change-Id: I07c5a548f10a1779faead4d9c596a1976aff8866 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-16Converted vPing to leverage the object-oriented SNAPS library.spisarski1-1/+1
JIRA: FUNCTEST-577 1. Replaced procedural openstack_utils with the object-oriented SNAPS library 2. Tests now clean themselves up. 3. Improved code documentation. 4. Removed dependency on file-based Cirros image and now leveraging the download URL. 5. Removed hardcoded location to the testcases.yaml file to leverage the value in config_functest.yaml 6. Included optional flavor metadata based on the scenario being tested 7. Included support for multi-part images. 8. Added enhanced support for configurable images. see SNAPS-76 Fixed line length verification problem with the previous submission Fixed retrieval of external network name to be dynamic. Changed external network name retrieval to leverage the newly merged snap_util.get_ext_net_name() function Added the creation and deletion of flavors. SNAPS now has the ability to add/remove security groups from running instances. Changed VMInstance constructor by moving userdata to configuration object. Change-Id: I0ef5e268eb153d696bb4d9a7533f780e5c603d26 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-05-16Merge "Get a logger before printing"Jose Lausuch1-6/+12
2017-05-16Switch from generate_report to PrettyTableCédric Ollivier2-2/+1
run_tests.py now relies on PrettyTable as most of the openstack clients. generate_report.py and its related unit tests are simply removed. It sets padding_width=5 in testcase.py too to conform with run_tests.py. Now report is printed in every case. Change-Id: Id9ce93f984503f25d6a2150482f397853fa3dd64 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-15Get a logger before printingCédric Ollivier1-6/+12
It also fixes pylint errors. Change-Id: I0d973360574a517724d0be3986c788c3ce7f54d4 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-11Modify TestCase.__str__() to use PrettyTableCédric Ollivier1-6/+10
It adds PrettyTable as requirement even if it's already defined in OpenStack client dependencies. If the TestCase object is considered as invalid, it simply returns the default str. Change-Id: Iee788aef2a13694d9482560977cbbf21c7f2c967 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-10Merge "Conform ODL with last framework updates"Morgan Richomme1-4/+5
2017-05-10Merge changes from topic 'add_testcase_str'Morgan Richomme1-1/+16
* changes: Remove the former results in DB url Implement TestCase __str__()
2017-05-09Merge "Bugfix: initialize the logger for snaps"Cedric Ollivier1-0/+1
2017-05-09Conform ODL with last framework updatesCédric Ollivier1-4/+5
Now ODL TestCase calculates the ratio between critical tests passed and failed and saves it in result. Non-critical test cases can fail as result doesn't take them into account [1]. It also updates default attribute values in TestCase and allows result to be float. [1] http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#setting-criticality Change-Id: Id4a89271b5b1a90cd3c1e2b08591ff26ffaffee0 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>