Can you run a data quality tool on Windows next to SQL Server?

Yes. DataOps TestGen installs on Windows with a single installer, dk-installer.exe, and runs either in Docker or, with no prerequisites, in its own Python environment. It connects to SQL Server over the network with a read-only SQL login, so it can sit on a Windows server or VM beside the database. Nothing needs Linux or a cloud account.

Key points

  • DataOps TestGen's Windows install is one download, dk-installer.exe, from DataKitchen's GitHub releases; per the docs, Docker Compose mode takes about 5 to 10 minutes and pip mode about 4 to 8.
  • Docker Compose mode, which DataKitchen recommends for persistent use, needs Docker 27 or later and Docker Compose 5.0 or later and runs TestGen's PostgreSQL database in its own container.
  • Pip mode needs no prerequisites: the installer uses uv to set up its own Python environment and keeps PostgreSQL on the file system; the docs describe it as suited for evaluation.
  • TestGen connects to SQL Server with a SQL login that needs only SELECT; Windows authentication isn't supported, so a Windows-only shop creates one SQL login for it.
  • Both modes seed demo data, open the TestGen UI in your browser, and print the login credentials, which the installer's Access Installed App option shows again later.

Plenty of SQL Server shops run Windows servers and nothing else. A data quality tool that needs a Linux box or a cloud account is a non-starter there. TestGen installs on Windows.

Install

From DataKitchen’s Install on Windows guide, checked November 3, 2026:

  1. Download dk-installer.exe and run it. If Windows shows Windows protected your PC, click More info, then Run anyway.
  2. Choose 1 for TestGen, then 1 for Install TestGen.
  3. Pick a mode.
  4. The installer seeds demo data, opens TestGen in your browser, and prints the sign-in credentials. Access Installed App shows them again later.
Docker Compose modePip mode
PrerequisitesDocker 27+ and Docker Compose 5.0+None
TestGen’s databasePostgreSQL in its own containerPostgreSQL on the file system
Install time, per the docsAbout 5 to 10 minutesAbout 4 to 8 minutes
Suited forPersistent use (recommended)Evaluation
Stop itdocker compose down in the install folderCtrl+C in the terminal

Pip mode is the fastest way to see TestGen on a locked-down Windows machine where Docker isn’t approved. Move to Docker mode, or a server, for daily use.

Connect to SQL Server

TestGen talks to SQL Server over the network, so “next to” can mean the same machine, a VM in the same subnet, or a laptop on the VPN.

TestGen only runs SELECT statements, and results stay in its own database on the Windows machine. No data goes to DataKitchen; see running checks without the cloud.

Same machine or separate?

Same machine is fine for a trial. For daily use, a separate server or VM keeps TestGen’s database and web UI off the production host. On a busy server, start with one or two threads, as DataKitchen’s hotel reservation case study did on a 1.2 TB SQL Server database.

Then follow the SQL Server setup answer: profile, generate tests, turn on monitors. Open source is free for one user, one connection, and one project. Start at the SQL Server install page, or the Microsoft stack page if you also test Azure SQL or Fabric.

Frequently asked questions

Short answers to the follow-up questions people ask next.

Do I need Docker to run TestGen on Windows?

No. The Windows installer offers Docker Compose mode, which needs Docker 27 or later and is DataKitchen's recommendation for persistent use, and pip mode, which needs no prerequisites. Pip mode sets up its own Python environment and keeps PostgreSQL on the file system, and the docs describe it as suited for evaluation.

Can TestGen use Windows authentication to SQL Server?

No. TestGen's Access Requirements page lists username and password as the only method for SQL Server, so create a SQL login with SELECT on the tables you want tested. The instance must allow SQL Server and Windows Authentication mode. Azure SQL Database also accepts managed identities and Entra ID service principals.

Should TestGen run on the same machine as SQL Server?

It can, for evaluation. For ongoing use, a separate Windows server or VM on the same network keeps TestGen's own database and web UI off the production host. TestGen's queries run inside SQL Server either way. If TestGen runs in Docker on the SQL Server machine, use host.docker.internal as the host name.

What does Windows show when I run dk-installer.exe?

Possibly a 'Windows protected your PC' screen. DataKitchen's install guide says to click More info, then Run anyway. The installer then asks which product and action you want: choose 1 for TestGen and 1 for Install TestGen, then pick Docker Compose or pip mode.

Try it on your own data

DataOps TestGen is free and open source. Profile a table and generate its tests this afternoon.