What are advantages/disadvantages of using Selenium for Java vs .NET applications?


I'm a test lead in a new project where we're starting with re-writing from scratch some web application which is about 12 years old. We have quite a free hand with defining processes and technologies. My goal is to have automated functional (for regression) tests with Selenium 2 (in python) connected with some Continuous Integration server.

Currently we're considering 2 technologies Java vs .NET (C#)

And my rather general question is: are there any advantages/disadvantages of using selenium 2 for Java vs .NET applications?

From my (tester) perspective I don't think that this would have a significant impact on my automation tests because we'll be creating them from user perspective but maybe I'm wrong and that's why I'm asking it in this place.

Thanks, Michal


It doesn't matter what language the application is written in. Selenium tests through the browser, and it can't tell the difference between a Java web app and one in C#.


I am currently testing Java-based web application and here are moreover general tips on how the developement should build them:

<ul><li>Every Web Element should have unique and unchangeable ID. This will assure you, that you can run your selenium scripts over and over again.</li> <li>The application should have form based authentification</li> <li>For better writing tests, the app should show "working" picture/message whenewer its doing something</li> </ul>

Its more like about being good web developer in general than used technology. Selenium is "just clicking" the final product - HTML page generated by the programming language.

BTW, here on StackOverflow, most people use WebDriver and JUnit (Java). Think about it before writing the scripts. Because if you have any python - related issue, I cannot help :)


  • Error with calling Numpy, Scipy, Gensim in python3
  • How to make a Sympy lambdify(ed) function accept array input?
  • Problem regarding displaying decimal values in C Program
  • Simple DocumentDb stored procedure
  • How to track clicked links
  • suppress/redirect stderr when calling python webrowser
  • What are the differences between C, and C++ calling conventions?
  • Initializing a dynamic array of non-default constructible objects
  • Scala - ambiguous reference to overloaded definition — with varargs [duplicate]
  • Can i fade text out at the end of a div?
  • Binding ASP.Net Menu Control to a Collection
  • MSBuild: How to read Assembly Version and FIle Version from AssmeblyInfo.cs?
  • AsyncController in MVC2 and T4MVC: can they work together?
  • Client-side HTTP_ACCEPT_LANGUAGE access? JavaScript? I don't see a JQuery wrapper. Static pages
  • How to maintain DatePicKer State After Rotate Screen
  • Using AppleScript to Move Mail Messages to Trash
  • Getting the syntax of prepared statements right
  • Can you recommend a good php Gantt charting development?
  • How to reset git pushed first commit into wrong new repo?
  • NSTimers causing leaks
  • How to trigger mysql event after a time period?
  • Application backgrounding in Xamarin.Mac
  • C# XML Serialization/DeSerialization [closed]
  • Validating a Firebase Key [duplicate]
  • How to organize this layout with overflows?
  • How to search for a method or variable name within android project?
  • Smarter Removing Unnecessary WhiteSpace CSV
  • Google TV VideoView playing YouTube rtsp videos
  • cSPADE data mining in R using arulesSequences - Error while converting to “transactions” format
  • Haskell program that can handle any arbitrary deterministic finite automaton
  • How to use AJAX to upload large CSV file? [closed]
  • Visual Studio 2017 Professional- Unable to find package at source
  • Request Access Token in Postman for Azure Function App protected by Azure AD B2C
  • Dynamic XML Schema Validates Subsection of Document
  • Typeahead.js does give me suggestions but doesn't select them
  • Using redis as an LRU cache for postgres
  • Another “Cannot make static reference…” Question
  • `$http:badreq Bad Request Configuration` - from angular post method, what is wrong here?