Ohjelmisto sisältää käyttöjärjestelmät ja ohjelmat, jotka on suunniteltu toimimaan yhdessä tai useammassa niistä. Ohjelmistotestaus on prosessi, jossa ohjelmistoja tutkitaan ja käytetään kehityksen aikana ja sen jälkeen, mutta ennen julkaisua, sen varmistamiseksi, että ominaisuudet toimivat, havaitsemaan virheitä, tarkistamaan virheenkorjauksia ja varmistamaan, että se toimii hyvin käyttäjille. Dynaaminen testaus, jota kutsutaan myös dynaamiseksi analyysiksi, on ohjelmiston arviointiprosessi, kun sitä käytetään. Se on toisin kuin staattinen testaus, joka on analyysi ohjelmasta, joka suoritetaan ilman ohjelman suorittamista. Muita testaustyyppejä ovat vasteajan testaus ja takautuva testaus.
Staattinen testaus ja dynaaminen testaus yhdessä ovat kaksi ohjelmistotestauksen päätyyppiä, ja ne tasapainottavat toisiaan tietyillä tavoilla. Toisaalta staattinen testaus löytää syntaksivirheitä ja muita koodausongelmia ja kattaa koko ohjelman. Toisaalta suuren ja monimutkaisen ohjelman dynaaminen testaus ei useinkaan kata koko ohjelmaa, koska kaikkia mahdollisia skenaarioita ei voida kuvitella tai luoda testille varatussa ajassa.
Dynaaminen testaus analysoi ohjelmiston eri käyttöympäristöissä. Tämä sisältää eri tietokoneiden merkkejä ja muita laitteisto -eroja, mahdollisesti useita näyttöjä, erilaisia käyttöjärjestelmiä ja erilaisia ohjelmistosovelluksia, jotka ovat rinnakkain koneessa. Lisäksi testaajilla voi olla ulkoisia moduuleja tai laajennuksia, joita he käyttävät testattavan ohjelmiston yhteydessä, mikä lisää testiympäristöjen erilaistumista dynaamisessa testauksessa.
Dynaaminen testaus ohjelmistokehitysyrityksessä noudattaa todennäköisesti IEEE: n (Institute of Electrical and Electronics Engineers) ohjelmistotestausta koskevia ohjeita ja protokollia sekä yrityksen näiden mukaisesti kehittämää testaussuunnitelmaa. Yrityksen ulkopuolisia betatestereitä käytetään usein lisätesteihin, ja nämä testaajat ovat yleensä täysin mukana dynaamisessa testauksessa. Yleensä yritetään saada monipuolinen joukko beetatestaajia laitteiston, käyttöjärjestelmien ja ohjelmien käytön kannalta. Beta-testaajilla, joilla voi olla salassapitosopimus yrityksen kanssa, voi olla noudatettava protokolla tai heitä voidaan pyytää käyttämään ohjelmistoa tavanomaisella tavalla tai he voivat tehdä joitain niistä. Beta -testaajille on yleensä muodollinen raportointijärjestelmä, joka ilmoittaa kaatumisista, epäillyistä virheistä, ominaisuuksien toimimattomuudesta kuvatulla tavalla tai muista epätavallisista, odottamattomista tai hankalista ohjelmiston kanssa työskentelyn näkökohdista.