cancel
Showing results for 
Search instead for 
Did you mean: 

Repeat Test Step

Contributor

Repeat Test Step

I stumbled upon the need to repeat a failed test-step, testing a really unstable third-party API. A colleague resolved it a few times using a few groovy-scripts at work, but i thought this can't possibly be a suitable long-term solution, and our testers aren't really groovy-savvy. Long story short, i ended up making a plugin that repeats a sequence of test-steps a few times based on if they are successful or not. 

 

Go give it a look if you want, it's on GitHub.

I wrote a short text about what use-case it resolves here

 

Also, if anyone has a moment to spare they can tell me how to include an icon in the test-case list, it only appears in the test-step list. Smiley Happy

Osten,
Self-proclaimed Groovy-fanatic
7 REPLIES 7
Community Hero

Re: Repeat Test Step

@05ten, very nicely build and thank your sharing the plugin to the community. So nice of you.

I got few questions / feedback (definitely not on the implementation of plugin, but execution aspect) so that end user will have better experience if those addressed. May be optional for some.


Regards,
Rao.
Contributor

Re: Repeat Test Step

Sure! I'll take any feedback i can get. Put the suggestions here, on the webpage or on GitHub and i'll have a look at them when i got the time. Smiley Happy

Osten,
Self-proclaimed Groovy-fanatic
Community Hero

Re: Repeat Test Step

@05ten,

 

Couple of thoughts / questions / feedback to consider for the benefit of consumers of this flow-soapui-plugin:

 

Users can have many suites and each can contain many test cases in each of their project -

 

  • Adding the repeat steps manually to those many test cases / projects would be hard and as you rightly pointed that not most of QA folks not savvy programmers.
    A way to do add the step in automated fashion would be easy for larget number of community members to be able to embrace this plugin.
    Having some kind of utility would helps a lot. I think, any one can create this utility and share it i.e., need to not require any changes from plugin side.
  • When there are huge number of projects, execution time would get increased and this may cause some users to disown this plugin.
    So, a way to automatically enable / disable this test step or its business logic conditionally on the fly would be benefitted i.e., passing system arguments to tesrunner / maven etc.,
    May be changes required in the plugin to make it possible, a wild guess.

Considering a release in Github -
At the moment, users have to setup the maven and build this for themselves in order to adopt it.
If a release(.jar file) is made available on github, then it may attract big number of consumers to try or/and use it as they see/found it.

 

Stuck to specific version -
Aware of the fact that SoapUI is stricter now for the user developed plugins and needs to be singed by SmartBear.
Though the other library mentioned by you allows users to use for 5.2.1 version.
However, heard that jailbreak is not working from 5.3.0 onwards though not tried for myself. Have you tried for 5.3.0?
Or plan to get this plugin signed by SmartBear and do a release in github?

Also, I believe, not only open source edition, Ready API can also use it and get benefitted out of this plugin provided signed by SmartBear.
There are list of plugins available here and do wish your one to be made available there to reach wider audiences?



Regards,
Rao.
Contributor

Re: Repeat Test Step

 

 

Users can have many suites and each can contain many test cases in each of their project -

I understand that some users can have many test-cases/suites and whatnot. But the use-case i had targeted for the plugin was unstable APIs, or testcases. Of course it's possible to use the plugin to iterate over a bunch of test-steps but that's a feature for a new version, right now its totally dependent on assertions and the status of a step. Smiley Happy

 

 

 

A way to automatically enable / disable this test step

Sure, that makes sense, a global disable of repeat-test-steps, perhaps i can put a button somewhere. 

Meanwhile, here's a groovy script that disables all repeat-steps! Smiley Happy 

 

testRunner.testCase.project.testSuiteList.each { suite -> 
  suite.testCaseList.each { testCase -> 
    testCase.testStepList.each { step -> 
       step.disabled = step.class.simpleName.equals("RepeatTestStep")  	
    }
  }
}

 

Just put it in any testcase and it will disable the step globally. 

 

Considering a release in Github 

Did it just the other day actually, it can be found here.

 

heard that jailbreak is not working from 5.3.0 

Tried it out with 5.3.0 and it still works, people in my team who needed the plugin early are using it! Smiley Happy

 

get this plugin signed by SmartBear

Haven't really talked to them about it yet, we'll see about it, so far it's a very slim use-case for the plugin, and from looking at the plugins in their repository this one feels like a very tiny one. I'll add some more use-cases for it, just plain old looping for starters, and then we'll see. 

 

Ready API can also use it 

It sure can! And even though i haven't really tried it in Ready! API yet, i'm fairly sure that it will. I'll get back when i tested it thoroughly though. 

 

Thanks for the feedback Rao! 

Osten,
Self-proclaimed Groovy-fanatic
Community Hero

Re: Repeat Test Step

Thank your the detailed reply and swift action on some of the items.


Regards,
Rao.
Community Hero

Re: Repeat Test Step

How about having icon left to the test step name (like it has to the other native steps)?

Found below link for repeat key word:
https://www.flaticon.com/free-icons/repeat_25860


Regards,
Rao.
Contributor

Re: Repeat Test Step

Done. Thanks Rao. Smiley Happy

 

Flow SoapUI Plugin 1.0.1

Osten,
Self-proclaimed Groovy-fanatic