cypress-parallel icon indicating copy to clipboard operation
cypress-parallel copied to clipboard

Support multi-machine execution via weight file

Open thisismydesign opened this issue 3 years ago • 5 comments

Hi,

Great tool. I'd like to further improve test speed by using multiple machines in the CI and split the tests between them using the generated weight file. I.e. commit weight file, then specify the group to be run: cypress-parallel --executors 5 --group 1

Is this possible or could it be supported?

Thanks!

thisismydesign avatar Dec 20 '21 10:12 thisismydesign

Which CI tool are you using ? @thisismydesign

ISanjeevKumar avatar Dec 22 '21 16:12 ISanjeevKumar

@ISanjeevKumar Github actions

thisismydesign avatar Dec 22 '21 16:12 thisismydesign

I believe this is something that needs to handle by CI itself and adding this feature to this tool will make it more complex to use.

Azure has this inbuilt capability to distribute the test cases on multiple machine but I am not sure about Github Actions .

But If you want to scale up the parallel execution then you can use Github parallel jobs to run parallel tests on multiple machine and inside that machine you can use cypress-parallel to run the test cases parallel on multiple threads. This way I think you can save more time.

ISanjeevKumar avatar Mar 02 '22 16:03 ISanjeevKumar

I'm not talking about cypress-parallel interacting with github actions in any way. Sure, I need to start more CI machines, but then I need to tell each machine which tests run, that's my issue. I would like to use the weight file for this. So I could tell cypress-parallel that

I have 5 ci machines and this is machine 1, given the committed weight file execute your share of the tests (i.e. the first ~20%)"

E.g.: cypress-parallel --executors 5 --group 1

thisismydesign avatar Mar 02 '22 17:03 thisismydesign

Yes, I understand. This can be done with some tweaks in cypress automation framework instead of adding this support in cypress-parallel.

ISanjeevKumar avatar Mar 03 '22 08:03 ISanjeevKumar