20

How can I run paralell tests on dual core machines connected via SSH on the same network ?

https://github.com/grosser/parallel_tests runs fine for local workers, but there is no way to run it on multiple machines

https://github.com/qxjit/deep-test - I've had no luck upon running it, there is a line in the example like

t.distributed_hosts

which throws an error

With Hydra I got an issue waiting forever for ssh workers

I tried the alpha version of Buffet, created a test repo and ran it but with no luck

fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git

I want to run only standard unit / integration / functional tests

No fancy stuff at all.

7
  • 1
    Building your own parallel/distributed testing setup can be quite a challenge. We've had great luck using a service called TDDium (tddium.com) that manages this for you, using a git remote server like Heroku to accept batches of code to run. I highly recommend them. Commented Apr 19, 2012 at 18:34
  • 1
    In the same vain as Winfield, we use CircleCi (circleci.com) to parallelize our tests with great success. Commented Oct 29, 2013 at 20:50
  • Why is parallel_tests not suitable for multiple machines? And what error does deep-test throw? Commented Nov 6, 2013 at 16:29
  • I don't know, it was over two years ago... Commented Nov 7, 2013 at 20:14
  • You could just run your own Travis or Jenkins Setup and run on push or do you want Guard/Autotest Style Remote Tests? Commented Nov 15, 2013 at 22:24

5 Answers 5

1

do try out http://test-load-balancer.github.io/ i have had great success with it in the past.

Sign up to request clarification or add additional context in comments.

Comments

1

If you are willing to run your tests on a hosted CI service, then there are quite a few good options. To list a few here in no particular order:

  1. Travis CI (there is pro version for private repos)
  2. Semaphore (Heroku addon present) parallelism even on the free plans
  3. Tddium (already mentioned above)
  4. Codeship (Heroku addon present, unsure of any out of the box support)
  5. Circle CI (Parallelism on paid plans)
  6. Snap-CI (Pipeline parallelism allow you greater control but with some configuration. Also they might be adding more out of box support in future)

I have tried all of them in my projects to varying levels, and they all work well. The differences would be mostly in how the services are priced. If you dont mind paying for the subscriptions, it would be best to rely on these services instead of trying to deal with hassle of splitting out the tests into processes. Of course, the exception would be if you doing it at a sufficiently large scale which might justify the cost savings in that case.

Some other points to keep in mind:

  • Parallelism within the same process can still give you good results on a sufficiently beefy box (with more cores) without much effort should be your first chocie, unless you have have already run out of option.
  • If your eventual goal is to speed up tests, do look at some benefits Travis-CI offers by with a better file system and an in memory database. (I not sure about this one)
  • If you still planning on setting up this on your own, you should look at GoCD, in combination with TestLoadBalancer (mentioned earlier).
  • Keep in mind if the problem your trying to solve is a growing test suite on sufficiently large project, you might want to actively start thinking about splitting your test suites logically and actually speeding them up, since parallelism only manages to delay the ultimate problem of a long running test suite it does not solve it completely.

Comments

0

Although not particularly related to how to run parallel_tests in multiple machine in the network, here are the issues I encountered and how I solved them when using parallel_test.

tests getting killed in the middle of a run using parallel_tests

Comments

0

I think problem in git configuration. check your git configuration

try this link

Whats the best way to work with Github and multiple computers?

Comments

0

You can also use Shippable http://www.shippable.com continuous service for parallel test

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.