magento / community-features

Magento Features Development is an Initiative to Allows Community Memebers Join to Development of Magento Features
46 stars 18 forks source link

[DevEx] Eliminate test module copying when executing tests #47

Open paliarush opened 6 years ago

paliarush commented 6 years ago

Test module copying should be eliminated in favor of custom autoload when executing integration tests.

Why this is a problem from Developer Experience point of view:

  1. After executing integration tests on one branch and switching to another branch, test modules stay in the app/code and result in unpredictable errors caused by incompatibility between branches.
  2. After message queue was moved to CE (since 2.3) and consumers are started automatically (since 2.2) there are tens of consumers spawned automatically by cron job. They consume all the memory on the instance, 4GB is not enough in this case.

ℹ️ Test modules are also copied to app/code by web API functional tests, but there are no RabbitMQ tests. Also, we cannot use custom auto-loader in case of functional tests because test modules must be properly loaded by regular autoloader and affect HTTP calls made from tests to the instance under test.