So I am implementing my own Page Object Model framework for a web application. It's my first time writing my own framework but I think I for the most part understand how I need to write it.

The framework is written in Ruby, using Selenium webdriver. However I am used to using Capybara to write test scripts. So I have also chosen to write the framework in Capybara as well.

I was curious if this is considered "Bad practice"?. Capybara is extremely popular (So much so that it was integrated into Rails not so long ago) so I don't see it going anywhere.

However I wonder if I should be writing my framework in pure selenium just to reduce any dependencies? Or is it not really an issue? Im actually not that used to writing pure selenium (Although I imagine converting capybara to selenium shouldn't be THAT difficult if need be).

I suppose this is opinion based but I am curious if this is considered "bad practice". Thanks!


2 Answers 2


Fair warning: this is my opinion based on practice: if it does what you need and doesn't introduce too much of a maintenance burden, it's not bad practice.

Your goal is to build scripts that a relatively easy to extend, relatively easy to debug, and relatively easy to maintain. If capybara works for you, then it's good.


Technology wise it depends on who might use it, we have developed test suites with protractor but they are rule out because there are no many automation tester who are adept with javascript. Go with the technology you or your team feel more comfortable with.

edit: misread the question.

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