Automated End-to-End Testing comes in several forms, depending on the type of application:
Web Applications
Mobile Applications (Android & iOS)
Desktop Applications (Windows)
API Testing
The above fall under functional testing. Additionally, there are other types of non-functional testing:
Performance Testing (Web)
Load Testing (Web)
Black Box Testing Means …
A key attribute of black box testing is transparency — i.e. test scripts are entirely independent of the application code. This allows for:
Writing test scripts in a common scripting language
Using consistent test syntax frameworks
For example, my father has successfully used the RSpec syntax framework (Ruby) for the above types of automated testing across multiple applications for over a decade.