# Built For Every Web Application

> TestOwl is technology-agnostic — it tests any web technology or framework by validating what users experience, not the code behind the application.

Test your web applications across any web technology or framework without being limited by how your application is built. TestOwl continues working because it validates what users experience — not the technology behind your application.

## Test Without Being Locked To A Technology

Your application can evolve without forcing your testing strategy to change. TestOwl works across different technology stacks, allowing QA teams to build reliable automation without being restricted by programming languages or frameworks.

## Supported Technology Stacks

- **React** — Modern single-page applications.
- **Angular** — Enterprise-scale frontend applications.
- **Vue** — Lightweight and progressive web applications.
- **PHP** — Web applications built with traditional and modern stacks.
- **Java** — Large-scale enterprise web platforms.
- **.NET** — Business and enterprise applications.

## What TestOwl Works With Inside Your App

The technology behind your application does not matter. These are the structures TestOwl handles.

| Area | How TestOwl handles it |
| --- | --- |
| Framework or language | Not needed. TestOwl tests the rendered application in the browser, not the code behind it |
| Single-page apps | Steps stay in sync with page changes, so tests run once the page is ready |
| Shadow DOM | Elements inside open shadow roots can be found and interacted with |
| iFrames | Elements inside iframes are recorded together with the iframe they belong to |
| Scope | Web applications running in a browser |

## FAQ

### Does TestOwl work with any frontend framework?
Yes. TestOwl is technology-agnostic and supports applications built with React, Angular, Vue, PHP, Java, .NET, and other web technology stacks.

### Why doesn't the underlying technology stack matter to TestOwl?
TestOwl validates what users experience in the browser rather than the underlying code, so it continues working regardless of the framework or language behind the application.
