iilyak commented on pull request #3110:
URL: https://github.com/apache/couchdb/pull/3110#issuecomment-682490951


   The purpose of tagging into groups proposed in the issue 
https://github.com/apache/couchdb/issues/1885 is to be able to split single 
`mix test` run here 
https://github.com/apache/couchdb/blob/master/Makefile#L230:L233 into multiple. 
Something like:
   ```
   mix test --trace --include single_node:true $(EXUNIT_OPTS)'
   mix test --trace --include degraded_cluster:true $(EXUNIT_OPTS)'
   mix test --trace --include cluster:true $(EXUNIT_OPTS)'
   mix test --trace --include performance:true $(EXUNIT_OPTS)'
   mix test --trace --include property_based:true $(EXUNIT_OPTS)'
   ```
   
   Notice that the tests are grouped by setup type they require. This is in 
order to put the fast tests before the slow ones. This would shorten 
development cycle. Currently the tests which require 
   single_node setup might be scheduled in the end of a test run. Which means 
that even though they are fastest to run the developer would have to wait while 
most of the test suite would complete (in Jenkins).
   
   Also I think we shouldn't change `@moduletag` but use `@tag` instead for 
tagging by setup. I didn't check but there might be a way to use tags like so 
`@tag setup: :single_node`:
   ```
   mix test --trace --include setup:single_node $(EXUNIT_OPTS)'
   mix test --trace --include setup:degraded_cluster $(EXUNIT_OPTS)'
   mix test --trace --include setup:cluster $(EXUNIT_OPTS)'
   mix test --trace --include setup:performance $(EXUNIT_OPTS)'
   mix test --trace --include setup:property_based $(EXUNIT_OPTS)'
   ``` 
    


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to