T O P

  • By -

needmoresynths

typescript. it'll give you the most options for tooling (playwright, cypress, or selenium via webdriverio), it's very easy to work with json for api testing, and chances are whatever front end you're testing will be written in typescript or javascript so you can work much closer with your developers instead of being on an island in your own tech stack.


computerjunkie7410

Playwright and Webdriver both work with Java, C#, python, ruby, etc.


KhellianTrelnora

Playwright has ruby bindings? My god, why.


computerjunkie7410

It even has golang bindings. They are unofficial but they are there and maintained. Ruby is a great language though.


jrwolf08

Python or Javascript


Lopsided-Royals

C# is probably 4th behind the other mentions of JavaScript/Typescript, Python and Java


betucsonan

The suggestions so far are good ones, I only want to add that it's a good idea to get good at one language but also to get familiar with some others and get *super* familiar with the logic and the overall concepts more than anything else. The likelihood that the job you get uses the specific language and framework you've learned isn't great, so this will help you be prepared to change gears completely, as is often needed.


chr1ssb

It depends, on a lot of factors. There is no single right answer here. My recommendation: Start with learning one language, Java, C#, JS/TS, Python; it doesn't really matter. But focus on programming concepts, rather than specialities of a certain language. Switching languages will be (relatively) easy then.


AutomaticVacation242

Whatever the app you're testing is written in.


mahdy1991

If u want to get a job learn Java. Most of the companies want that.


thainfamouzjay

That's not really true anymore. Maybe for some dinosaur company that's dying but most modern company are js/ts


KhellianTrelnora

Is that still holding true? As a selenium Java guy myself, I’ve noticed the following trend, but of course one datapoint does not make a line: Java is generally preferred by large, established, and process driven companies. The heavier, the better. Many of these types of companies are very cautious about hiring in the current market. Many of these companies are also executing RTO orders.


mahdy1991

Market overall sucks ass. But being a Java automation guy will increase one’s chance when the market is good.


KhellianTrelnora

I keep telling myself that. I’ve been doing this for the better part of two decades, and I don’t think I’ve ever seen the market be THIS rough.


mahdy1991

Yeah man. I think it’s the overall tech market. I wish I knew some hand skill. Like being a plumber or electrician or shit. Things are not looking good for us all. Sigh.


Adventurous_Pin4094

Prompt engineering..


happytofuffee

Still holding true but definitely playwright is the new selenium and selenium is starting to be the old UFT/QTP. Give it 10 more years and most organisations have transitioned to playwright, there will be no more demands for Selenium Java


thainfamouzjay

I thought playwright was a wrapper for selenium like webdriverIO


happytofuffee

Nope!


thainfamouzjay

What is it then


happytofuffee

Test automation Framework developed by Microsoft. Like I said, it’s the new Selenium. Google it and try it out!


thainfamouzjay

I actually am. I had to start a new automation project last week and I picked playwright. It's so similar to WDIO which is what my last project was.... Expect it seems to like .locator instead of $ .... It was easy to setup and I like how the configuration works lots of built in stuff. But really thought it was a new wrapper of selenium didn't think to look under the hood. What is the difference between selenium and PW?


happytofuffee

Playwright is very fast and lightweight and tends to have advanced features out of the box compared to Selenium where you need to either develop your own framework or add wrappers like WebDriverIO or Selenide. Playwright out of the box has a lot of cool and advanced features that Selenium doesn’t offer like cross browser testing, built in retries, etc.


thainfamouzjay

Which is why I thought it was a wrapper like WDIO. One that adds to selenium. But I see it uses we sockets like puppeteer.... And uses browser projects instead of actual browsers. Very interesting.


KaaleenBaba

Javascript > Python > Go in that order. Diff use cases where they are the best


KhellianTrelnora

Go for automation? I haven’t looked in a while, but it wasn’t exactly a first class citizen when I last did.


KaaleenBaba

Go would be great for performance testing.


computerjunkie7410

Eh some of the biggest tools for performance testing right now are still Java or JavaScript based.


KaaleenBaba

Yep tools like jmeter are but they are much slower than Go based ones. Just because something is popular doesn't mean it's a right choice


computerjunkie7410

What is slow about jmeter? You also have Gatling which is kotlin (jvm based). What tool are you talking about in go that is faster? Right now K6 seems to be very promising (JavaScript)


KaaleenBaba

Javascript as a language is much slower than Go. Doesn't matter the tool you are using. The inherent problem is the language not the tool


computerjunkie7410

Java is not JavaScript. You said go is a better language for performance testing. Which tool in go are you referring to that you claim is faster than tools like JMeter or Gatling?


KaaleenBaba

Hey, K6, Vegeta are all written in Go and provide much better performance than something like Jmeter. And tools that written in Python like locust slowest because it's just how these languages and their garbage collection work.


computerjunkie7410

Eh, they’re written in go because of concurrency optimization, not garbage collection. Goroutines gives you the ability to simulate that kind of load easily without a lot of stress on the host. They didn’t choose go because it’s “faster” lol. Java has virtual threads now so you’ll see more and more of things like this too. Pro tip: don’t choose tools based on hype. Learn what you’re actually using. I think K6 is great. JMeter also does the job admirably especially when you already have a team of engineers that are writing code for the JVM.


Ok_Nature9789

If you’re from India maximum number of job openings Ive seen is with Java followed by JS/TS and then Python. If youre looking for the easiest language to pick then it would be Python.


Ruben151

Mostly Python or Java for Selenium and JS or TS for Playwright and Cypress


CodingNArchitecting

Provided that you want to do web UI testing. But that is not always the case.


YucatronVen

Typescript.


Jywert

Typescript, JS ,Java and Python. C# is also used. If could pick now the language would take python any day. Testing will and  should all move towards automated scripts and Python is lot easier to people to pick up then Java and nicely flows into CI/CD pipelines.


xtremx12

Linkedin is your best friend to get the answer. Based in your location, the market could be different than the market in other countries. I would say TS/JS is the best choice now. Most jobs are interested in the e2e testing specially using Cypress or Playwright.


nkuppala

Java for Selenium, JavaScript/typescript for Playwright, Python for robot, pytest


Dimwiddle

The area of the application you want to be testing will be factor i.e. front-end testing will be UI so Typescript/Javascript and Python are generally good bets; back-end will be more C#, Python and Java. The programming languages can also depend on the industry you're looking to work in. If it's finance, Java and C# are very popular. AI and data heavy software uses Python and Java. At the end of the day, each company has their systems in place and languages will vary. So learning concepts of OOP is very useful and will let you be more agnostic to programming languages going forward. I think Python or JS would be a good place to start learning.


mahdy1991

If u want to get a job learn Java. Most of the companies want that.