Java language family
Java is a widely used by testers in traditional corporations. It runs inside a virtual machine (JDK) thats also used as base for other languages like: Kotlin, Scala, Clojure and Groovy.
Why you should learn
- Large adoption on corporations
- Mature testing ecosystem
- All testing levels nd multiple testing types
- Can be used to test software written in any other languages:
- Web Pages (Selenium, Playwright)
- API’s (Bruno, SoapUI)
- Database or file manipulation
- Shell returns
- Graphic interfaces (Appium, Oculix)
What a tester should learn
- Basic syntax:
- Classes and Objects
- Data types and Collections (List, Set, Map)
- Methods (public, static, private)
- Exceptions and Errors
- Constructors and parameters
- Inheritance, Interfaces and Generics
- Basic configuration
- Installation
- IDEs test configuration
- Junit (runs all tests from other frameworks)
- Annotations
- Test collection and test suits
- Some other automation framework (by type of software or test )
Generic testing tools
-
webdrivermanager 🌐(Web Testing)
Language specific tools
Java
-
JUnit (unit, runner)
-
Arquillian (integration)
-
Hoverfly 🌐 (api)
-
ArchUnit 🌐 (architecture testing)
-
Maven Build Scanner 🌐 (dependencies)