Has anyone found a way to run C# Selenium RC tests in parallel?

前端 未结 3 1732
盖世英雄少女心
盖世英雄少女心 2020-12-29 09:59

Has anyone found a way to run Selenium RC / Selenium Grid tests, written in C# in parallel?

I\'ve currently got a sizable test suite written using S

相关标签:
3条回答
  • 2020-12-29 10:23

    I wrote PNUnit as an extension for NUnit almost three years ago and I'm happy to see it was finally integrated into NUnit.

    We use it on a daily basis to test our software under different distros and combinations. Just to give an example: we've a test suite of heavy tests (long ones) with about 210 tests. Each of them sets up a server and runs a client in command line running several operations (up to 210 scenarios).

    Well, we use the same suite to run the tests on different Linux combinations and windows variations, and also combined ones like a windows server with a linux client, windows xp, vista, then domain controller, out of domain, and so on. We use the same binaries and then just have "agents" launched at several boxes.

    We use the same platform for: balancing load test load -> I mean, running in chunks faster. Running several combinations at the same time, and what I think is more interesting: defining multi client scenarios: two clients wait for the server to start up, then launch operations, synch with each other and so on. We also use PNUnit for load testing (hundreds of boxes against a single server).

    So, if you have any questions about how to set it up (which is not simple yet, I'm afraid), don't hesitate to ask.

    Also I wrote an article long ago about it at DDJ: http://www.ddj.com/architect/193104810

    Hope it helps

    0 讨论(0)
  • 2020-12-29 10:37

    I am working on this very thing and have found Gallio latest can drive mbUnit tests in parallel. You can drive them against a single Selenium Grid hub, which can have several remote control servers listening.

    I'm using the latest nightly from Gallio to get the ParallelizableAttribute and DegreeOfParallelismAttribute.

    Something things I've noticed is I cannot rely on TestSet and TestTeardown be isolated the parallel tests. You'll need the test to look something like this:

    [Test] public void Foo(){
      var s = new DefaultSelenium("http://grid", 4444, "*firefox",
                                  "http://server-under-test");
      s.Start();
      s.Open("mypage.aspx");
      // Continue
      s.Stop();
    
    }
    

    Using the [SetUp] attribute to start the Selenium session was causing the tests to not get the remote session from s.Start().

    0 讨论(0)
  • 2020-12-29 10:37

    I don't know if no answer counts as an answer but I'd say you have researched everything and you really came up with the 2 possible solutions...

    • Test Suite runs tests in parallel
    • Split the test suite up

    I am at a loss for any thing else.

    0 讨论(0)
提交回复
热议问题