0

Currently I have 3 web applications + multiple web services all housed under one project for test automation. I'm allowing people to run what they "need to execute" using the mvn cucumber tag options, passing in some arguments there.

Can someone help me with a better approach to this? the end goal is to just have some maven files that can be called and tests against a particular product are executed

Each product package has feature files/page objects/Step definitions inside of it and currently I am just heavily tagging up the .feature files and using maven arguments against the tags to run only what is necessary

  • what languages are the applications in?, are they totally separate or connected in some way?, are the projects in the same repository? – mutt Aug 18 '17 at 17:43
  • @mutt they are different languages (Java automation, products are primarily c#). I just want to be able to attach appropriate steps into a build pipeline so the correct automated tests are ran vs each product when necessary. I have no problem building a ton of maven files for different scenarios, just wondering if its better handled some other way? Possibly misread - the products are not really connected at all but moving to microservice heavy architecture in future will mean they likely will share similar components, having stepdefinitions that could be reusable may be invaluable etc – symon Aug 18 '17 at 17:53
  • I think that comment clarifies a bit to the question. You might want to mod the question with some of the details from the comment. So long as it works to organize and execute as desired with a lowered maintenance footprint and easy usability and modification I'd think anything would work. Just a comment as I think people who have specific preferred solutions should likely answer to make it a valuable contribution. – mutt Aug 19 '17 at 5:48
1

Ideally, each project should have its own automation project (in the same or different repository of the SUT).

You can transform your framework in an extension to Cucumber. This way, people can get what they need for your general framework and implement what they need (even override your general behaviour).

zucchini is an exemple of such extension for Java. And there others for other languages [2][3]

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.