You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@couchdb.apache.org by GitBox <gi...@apache.org> on 2020/08/28 12:11:52 UTC

[GitHub] [couchdb] iilyak commented on pull request #3110: Tag elixir test modules in meaningful groups

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:
users@infra.apache.org