Hello all, in my opinion for test automation programming language selection, you should consider following items:
♦ Programming Language community of your automation framework. For example, if you use selenium webdriver, Language support of JAVA is %68, JS %15, Python %11, %5 Ruby, %1 C# Reference: https://youtu.be/Zf_qsXK6YdM?t=314 [Dave Haeffner’s SauceLabs Event Presentation].
♦ You should check which version is stable and get the updates first. For selenium, as I saw JAVA gets the first updates.
♦ You should check StackOverflow which language has more support.
♦ You should consider your competency of Programming Language which will be used in automation project.
♦ You should consider Test Runner frameworks and their capabilities such as JUnit, TestNG, NUnit, MBUnit, etc.
♦ You should consider how you can run your tests in parallel without any pain.
♦ You should consider your software development house’s programming language. In this way, you will get help from developers but in general, developers focus on development rather than test automation (not always but in general). If they write unit tests, that will be great!
♦ API Testing libraries of that programming language.
♦ BDD support of that language.
♦ Visual Test Automation support.
I am in a .NET house but I changed the test automation language from C# to JAVA. Because of above reasons. In addition, when you want to search test automation experts, you can find JAVA experienced test automation experts much easily in our region. If you are a manager or decision maker, you should also consider this too.
And you should consider many items to select a programming language for test automation. If you have any feedback, please share with us in the comment section.