Yazılım, işletim sistemlerini ve bunlardan bir veya daha fazlasında çalıştırılmak üzere yapılan programları içerir. Yazılım testi, geliştirme sırasında ve sonrasında, ancak piyasaya sürülmeden önce, özelliklerin çalıştığını doğrulamak, hataları saptamak, hata düzeltmelerini kontrol etmek ve kullanıcılar için iyi çalıştığından emin olmak için yazılımı inceleme ve kullanma sürecidir. Dinamik analiz olarak da adlandırılan dinamik test, yazılımın kullanıldığı gibi değerlendirme sürecidir. Program çalıştırılmadan yapılan bir programın analizi olan statik testin aksine durur. Diğer test türleri arasında yanıt süresi testi ve geriye dönük testler bulunur.
Statik test ve dinamik test birlikte yapılan başlıca test testlerinden ikisidir ve birbirlerini belirli şekillerde dengelerler. Bir yandan, statik test sözdizimi hatalarını ve diğer kodlama sorunlarını bulur ve tüm programı kapsar. Öte yandan, büyük ve karmaşık bir programın dinamik olarak test edilmesi çoğu zaman tüm programı kapsamaz; çünkü her olası senaryo, test için ayrılan bir zamanda hayal edilemez ya da yaratılamaz.
Dinamik test, farklı işletim ortamlarında yazılım programını analiz eder. Bu, muhtemelen birden fazla monitör, farklı işletim sistemleri ve makinede bulunan farklı yazılım uygulama kümeleri dahil olmak üzere farklı bilgisayar markalarını ve diğer donanım farklılıklarını içerir. Ek olarak, test ediciler, test edilen yazılımla bağlantılı olarak kullandıkları, test ortamlarının dinamik testlerdeki farklılaşmasını artıran harici modüllere veya eklentilere sahip olabilir.
Bir yazılım geliştirme şirketi içindeki dinamik testlerin, IEEE (Elektrik ve Elektronik Mühendisleri Enstitüsü) tarafından belirlenen ve yazılım testine ve şirketin bunlara uygun olarak geliştirdiği test planına ilişkin yönergeleri ve protokolleri takip etmesi muhtemeldir. Bir şirket dışındaki harici test cihazları genellikle ek testler için kullanılır ve bu testler genellikle tamamen dinamik testlerle ilgilenir. Donanım, işletim sistemi ve program kullanımı açısından uygun bir şekilde çeşitli beta test gruplarına sahip olma girişimleri yapılır. Şirket ile gizlilik sözleşmesi imzalayabilen beta test ediciler, yazılımı normalde kullanacakları şekilde kullanmaları veya izlemeleri veya kullanmaları için takip edilmesi veya kullanılması istenebilir veya her birini yapabilirler. Genellikle beta test uzmanlarının kazaları, şüpheli hataları, açıklandığı gibi çalışma özelliklerinin başarısızlığını veya yazılımla çalışmanın diğer olağandışı, beklenmedik veya uygunsuz yönlerini gösterdiğini gösteren resmi bir raporlama sistemi vardır.


