{"action":"created","issue":{"url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/3490","repository_url":"https://api.github.com/repos/SatelliteQE/robottelo","labels_url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/3490/labels{/name}","comments_url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/3490/comments","events_url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/3490/events","html_url":"https://github.com/SatelliteQE/robottelo/pull/3490","id":156953580,"number":3490,"title":"Decorate custom generator helpers with @datacheck","user":{"login":"abalakh","id":11719030,"avatar_url":"https://avatars.githubusercontent.com/u/11719030?v=3","gravatar_id":"","url":"https://api.github.com/users/abalakh","html_url":"https://github.com/abalakh","followers_url":"https://api.github.com/users/abalakh/followers","following_url":"https://api.github.com/users/abalakh/following{/other_user}","gists_url":"https://api.github.com/users/abalakh/gists{/gist_id}","starred_url":"https://api.github.com/users/abalakh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abalakh/subscriptions","organizations_url":"https://api.github.com/users/abalakh/orgs","repos_url":"https://api.github.com/users/abalakh/repos","events_url":"https://api.github.com/users/abalakh/events{/privacy}","received_events_url":"https://api.github.com/users/abalakh/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/SatelliteQE/robottelo/labels/API","name":"API","color":"fbca04"},{"url":"https://api.github.com/repos/SatelliteQE/robottelo/labels/CLI","name":"CLI","color":"009800"},{"url":"https://api.github.com/repos/SatelliteQE/robottelo/labels/Infrastructure","name":"Infrastructure","color":"5319e7"},{"url":"https://api.github.com/repos/SatelliteQE/robottelo/labels/UI","name":"UI","color":"0052cc"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2016-05-26T10:32:41Z","updated_at":"2016-05-27T09:45:30Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/SatelliteQE/robottelo/pulls/3490","html_url":"https://github.com/SatelliteQE/robottelo/pull/3490","diff_url":"https://github.com/SatelliteQE/robottelo/pull/3490.diff","patch_url":"https://github.com/SatelliteQE/robottelo/pull/3490.patch"},"body":"To speed up tests execution on jenkins, we use `run_one_datapoint=true` setting in `robottelo.properties` file, which decorates datafactory helpers to return only 1 random name instead of a list with all possible combinations. This leads to 1 subtest per each test instead of 5-7 of them, i.e we are not testing the same things with all possible combination of names but reducing execution time in 5-7 times.\r\nThe thing is only generic datafactory helpers were decorated, but a lot of modules have their custom ones which we forgot to update. Fixing that flaw as it should lead to noticeable performance improvements.\r\nExample of test executed before this change:\r\n```python\r\npy.test tests/foreman/cli/test_syncplan.py -k 'test_positive_create_with_interval'\r\n================================ test session starts =================================\r\nplatform linux2 -- Python 2.7.10, pytest-2.9.1, py-1.4.31, pluggy-0.3.1\r\nrootdir: /home/andrii/workspace/robottelo, inifile: \r\nplugins: xdist-1.13.1, repeat-0.2\r\ncollected 15 items \r\n\r\ntests/foreman/cli/test_syncplan.py .\r\n\r\n=========== 14 tests deselected by '-ktest_positive_create_with_interval' ============\r\n====================== 1 passed, 14 deselected in 99.80 seconds ======================\r\n```\r\nAnd after:\r\n```python\r\npy.test tests/foreman/cli/test_syncplan.py -k 'test_positive_create_with_interval'\r\n================================ test session starts =================================\r\nplatform linux2 -- Python 2.7.10, pytest-2.9.1, py-1.4.31, pluggy-0.3.1\r\nrootdir: /home/andrii/workspace/robottelo, inifile: \r\nplugins: xdist-1.13.1, repeat-0.2\r\ncollected 15 items \r\n\r\ntests/foreman/cli/test_syncplan.py .\r\n\r\n=========== 14 tests deselected by '-ktest_positive_create_with_interval' ============\r\n====================== 1 passed, 14 deselected in 12.90 seconds ======================\r\n```\r\nIn relative values it leads up to 7-8x performance boost for some tests (3-4x times faster in average, i guess).\r\nP.S.: please note that only _some_ of the tests were affected, we won't receive 3-4 times faster jenkins runs :) but even 10% performance boost will actually mean reducing runs duration for another hour which is cool."},"comment":{"url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/comments/222105560","html_url":"https://github.com/SatelliteQE/robottelo/pull/3490#issuecomment-222105560","issue_url":"https://api.github.com/repos/SatelliteQE/robottelo/issues/3490","id":222105560,"user":{"login":"abalakh","id":11719030,"avatar_url":"https://avatars.githubusercontent.com/u/11719030?v=3","gravatar_id":"","url":"https://api.github.com/users/abalakh","html_url":"https://github.com/abalakh","followers_url":"https://api.github.com/users/abalakh/followers","following_url":"https://api.github.com/users/abalakh/following{/other_user}","gists_url":"https://api.github.com/users/abalakh/gists{/gist_id}","starred_url":"https://api.github.com/users/abalakh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abalakh/subscriptions","organizations_url":"https://api.github.com/users/abalakh/orgs","repos_url":"https://api.github.com/users/abalakh/repos","events_url":"https://api.github.com/users/abalakh/events{/privacy}","received_events_url":"https://api.github.com/users/abalakh/received_events","type":"User","site_admin":false},"created_at":"2016-05-27T09:45:30Z","updated_at":"2016-05-27T09:45:30Z","body":"Ok, so custom tasks executing all existing tests before and after this change have finished. Result - before this change it took 7 hours 42 minutes, after - 7 hours 10 minutes. No new failures were introduced.\r\nUnfortunately, not that appreciable improvement, but half an hour is still a thing.\r\nYou can check the results in satellite6-standalone-automation job, builds 95 and 97 respectively (can't post internal links here)"}}
{"actor":{"display_login":"abalakh"}}