Which has the better support for Selenium, Python or Ruby?



  • I need to use Selenium to do some automating testing. Which language has better support for Selenium?

    That is, once a new version of Selenium is released,

    And I can get the newest version binding on Ruby or Python as soon as possible.

    I love the Ruby syntax more than Python's (which is more elegant, but it seems Python has better support for Selenium).

    Please give me some directions, thanks

    UPDATE

    As a beginner, I will look up the documentation first and see how to use Selenium.

    But I found the Ruby version has poorer documentation than Python's

    http://selenium-python.readthedocs.org/

    Is there any good documentation for Ruby-binding Selenium?



  • As @Niels van Reijmersdal mentioned, it makes sense to use the language in which you have local experts available.

    But you don't have to use the same language - use the language in which your team will be more productive. Python and Ruby are almost identical in expression power. I would argue that Python is more readable, which is significant advantage when you share code with others, or even you have to read your own code few years later. Cool syntax sugar you so like in Ruby might be very well confusing to others. Python is more straightforward, and as you said, has better support for Selenium.

    Python is also very popular language beyond web applications (numerical processing, statistics, bioinformatics, system administration), while Ruby is limited to web application niche. For this reason, becoming Python expert adds more to your career options. And it seems that many programmers have same opinion: Python usage steadily grows, while Ruby peaked with RoR in 2006 but slowly shrinks (according to TIOBE index), following Perl (which was Ruby's intellectual predecessor).

    Edit: I do not claim that Python has better support for Selenium than Ruby. It was opinion of original poster @poc. I argue that Python is better choice for other reasons. And because of that, and because of my experience how Python community settles around few libraries and continues to improve them (because in Python, it is easier to share code with others), I expect Python bindings will continue to be maintained, while Ruby's popularity is past it's peak.

    Edit 2: Criteria for selecting language to write tests are different that criteria for language to write main application. My friend's company uses C++ for speed for main application (not a web application) but Python for writing tests - execution speed is not as critical for tests, but productivity and flexibility for test is better with Python, even if they have in-house C++ experts.



Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2