I'd just like to challenge what seems to be a few assumptions behind
your comments.
On 8/28/10 2:16 AM, Chuck van der Linden wrote:
> I'm not a giant fan of any UI based loadtesting tools because they
> don't tend to scale well due to the overhead of having to render the
> UI, do clientside processing, etc etc. That's why most of the well
> regarded loadtesting tools operate at the protocol level, where you
> can support often upwards of 1000 or more vusers from a single system.
> (just try running 500 to 1000 simultaneous UI sessions on a single
> box.. )
Cucumber tests do not have to access the application through the UI.
And not all UI testing clients do rendering.
> Also with loadtesting you may not be concerned with the same sorts of
> validations as with functional, and surely you are far more interested
> in instrumenting the performance stats of the various servers in the
> system under test. (get the free download of "Performance Testing
> Guidance" that the ms patterns and practices folks put out.. it covers
> a lot of this and is surprisingly neutral in terms of specific
> technology)
It seems perfectly feasible for a Cucumber test to validate performance
stats. You would not likely use functional-test scenarios to do your
load testing.
> The other problem is that loadtests need lots of repeatable data, e.g.
> the test for 'new user registration' needs to be able to register
> thousands of new users over the duration of the test, that means a
> thousand rows of unique data.. Where you scenarios in cucumber to
> create a new user likely have only a single row, or a small handful at
> most.
There's no need to hand-code a thousand rows of unique data. You have
all the power of ruby to generate them.
> If you try to just run your functional tests multiple times against a
> load environemnt, you'll find lots of tests that just start failing..
> tests to delete things fail because the thing already got deleted,
> tests to create new unique things fail because the thing already
> exists. Tests to buy an item fail because the prior 50 runs of that
> test have now reduced the inventory to zero (and besides who wants
> your loadtest users all buying the one same item over and over and
> over) .
If you can test more creatively with other tools, you can certainly do
so with Cucumber also.
There may be efficiency limits with using Cucumber, but I think that
most of the limitations you see are products of your own vision, not of
Cucumber.
cheers,
George
--
----------------------------------------------------------------------
* George Dinwiddie * http://blog.gdinwiddie.com
Software Development http://www.idiacomputing.com
Consultant and Coach http://www.agilemaryland.org
----------------------------------------------------------------------