{"action":"created","issue":{"url":"https://api.github.com/repos/opf/openproject/issues/3369","labels_url":"https://api.github.com/repos/opf/openproject/issues/3369/labels{/name}","comments_url":"https://api.github.com/repos/opf/openproject/issues/3369/comments","events_url":"https://api.github.com/repos/opf/openproject/issues/3369/events","html_url":"https://github.com/opf/openproject/pull/3369","id":101396680,"number":3369,"title":"[20849] Reorganize and speed up test suite","user":{"login":"basiszwo","id":24071,"avatar_url":"https://avatars.githubusercontent.com/u/24071?v=3","gravatar_id":"","url":"https://api.github.com/users/basiszwo","html_url":"https://github.com/basiszwo","followers_url":"https://api.github.com/users/basiszwo/followers","following_url":"https://api.github.com/users/basiszwo/following{/other_user}","gists_url":"https://api.github.com/users/basiszwo/gists{/gist_id}","starred_url":"https://api.github.com/users/basiszwo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/basiszwo/subscriptions","organizations_url":"https://api.github.com/users/basiszwo/orgs","repos_url":"https://api.github.com/users/basiszwo/repos","events_url":"https://api.github.com/users/basiszwo/events{/privacy}","received_events_url":"https://api.github.com/users/basiszwo/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-08-17T10:58:46Z","updated_at":"2015-08-17T11:14:24Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/opf/openproject/pulls/3369","html_url":"https://github.com/opf/openproject/pull/3369","diff_url":"https://github.com/opf/openproject/pull/3369.diff","patch_url":"https://github.com/opf/openproject/pull/3369.patch"},"body":"https://community.openproject.org/work_packages/20849\r\n\r\nI did some reorganizing and broke up the test matrix. We are down to 20mins \r\nruntime. In case we can get more parallel jobs to run (currently 5) we can\r\ndecrease even more. \r\n\r\n\r\n#### What has been done?\r\n\r\n- do not ignore schema.rb and make use of it\r\n- remove legacy specs (I assume that most of the stuff is covered anyway)\r\n- generate coverage report only on demand\r\n- remove object daddy and fully switch to factory girl\r\n- largely split test matrix\r\n- only test against postgresql (myssql should not be checked on each run)\r\n- fix rspec require statements\r\n- extract rspec configs to separate files\r\n- update rspec config\r\n- run most of the specs with capybara-webkit except selenium dependent ones\r\n- reorganize rspec files\r\n  - combine api specs\r\n  - divide rspec feature specs in modules (1st step towards modules and required for build matrix)\r\n- reorganize cucumber features: divide into modules (mainly for build matrix)\r\n- add license to some files\r\n- add parallel_test gem\r\n- require features in cucumber config to be able to run `cucumber features/foo/bar.feature`\r\n- do not create screenshots for failing specs in CI\r\n\r\n#### Next steps\r\n\r\n- Test parallel_test on travis and see if this decreases test time even more.\r\n- run webpack only once\r\n- compile asset before\r\n- identify slowest tests and rewrite them\r\n"},"comment":{"url":"https://api.github.com/repos/opf/openproject/issues/comments/131783814","html_url":"https://github.com/opf/openproject/pull/3369#issuecomment-131783814","issue_url":"https://api.github.com/repos/opf/openproject/issues/3369","id":131783814,"user":{"login":"myabc","id":755,"avatar_url":"https://avatars.githubusercontent.com/u/755?v=3","gravatar_id":"","url":"https://api.github.com/users/myabc","html_url":"https://github.com/myabc","followers_url":"https://api.github.com/users/myabc/followers","following_url":"https://api.github.com/users/myabc/following{/other_user}","gists_url":"https://api.github.com/users/myabc/gists{/gist_id}","starred_url":"https://api.github.com/users/myabc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/myabc/subscriptions","organizations_url":"https://api.github.com/users/myabc/orgs","repos_url":"https://api.github.com/users/myabc/repos","events_url":"https://api.github.com/users/myabc/events{/privacy}","received_events_url":"https://api.github.com/users/myabc/received_events","type":"User","site_admin":false},"created_at":"2015-08-17T11:14:24Z","updated_at":"2015-08-17T11:14:24Z","body":"> Remove legacy specs as they are not being run anyway\r\n\r\nThis is not true. See Travis."}}