Automaattinen toiminnallinen testaus on termi, jota käytetään kuvaamaan automaattisten testikomentosarjojen luomisprosessia ohjelmistosovellusten manuaalisista toiminnallisista testeistä. Toiminnallinen testaus prosessissa, jossa ohjelmisto arvioidaan sen varmistamiseksi, että se täyttää kaikki sille asetetut vaatimukset. Tämä testausmenettely suoritetaan yleensä käyttämällä ohjelmistoa, joka on suunniteltu tallentamaan ja seuraamaan ohjelmistotestausta. Ennen automaattisen toiminnallisen testausmenetelmän kehittämistä ohjelmistokehittäjät luottivat ohjelmistosovellusten inhimilliseen testaukseen.
Manuaaliseen testausmenetelmään liittyy luontaisia riskejä ja kustannuksia, koska se perustuu ihmisiin varmistaakseen sovelluksen toimivuuden. Lisäksi useimmilla sovelluksilla on pitkä käyttöikä, mikä edellyttää useiden ohjelmistokorjausten lisäämistä taustalla olevaan käyttöjärjestelmään. Automaattisen toimintatestausprosessin avulla ohjelmistosovellusten omistajat voivat olla varmoja siitä, että regressiotestaus voidaan suorittaa kustannustehokkaammin ja vähemmän virheitä.
Automaattinen toimintatestaus ei ole uusi idea, koska se luotiin ensimmäisen ohjelmistosovelluksen avulla. Aiemmin tämän testauksen suorittivat sovelluksen luoneet kehittäjät. Nykyään automaattisia toiminnallisia testejä suunnittelevat, kehittävät ja testaavat testausinsinöörit, joilla on testaukseen erikoistunut taitopaketti. Tämä paradigman muutos on varmistanut, että sovelluksen kehittäjä on varmistettu riippumattomalla varmennus- ja validointiprosessilla varmistaakseen, että ohjelmistosovelluksen toiminnalliset vaatimukset ovat täydelliset ja tarkat.
Yksi tämän testausmenetelmän tärkeimmistä eduista on se, että se mahdollistaa testiohjelman uudelleenkäytön. Automaattisen testin luomisen aikana testausinsinöörit luovat komentosarjoja, jotka suorittavat halutun toiminnallisen testin. Tämä testiohjelmointi mahdollistaa sovelluksen tulevan testauksen ja näiden testien tulokset toimitetaan automaattisesti ohjelmisto -organisaation johtajille. Jokainen testi luodaan kuten yksittäinen työyksikkö ja ketjutetaan yhteen, jotta voidaan luoda koko ohjelmistosovelluksen testisarja. Näiden testien tulokset tiivistetään ja toimitetaan ohjelmistopäälliköille vankalla tavalla, jotta käynnissä oleva järjestelmäkehitys voidaan todentaa reaaliajassa.
Automaattinen toiminnallinen testaus ei voi toistaa ihmisen ajattelun logiikkaa ajatella testejä ja arvioida tuotteen yleistä tyytyväisyyttä. Sitä voidaan kuitenkin käyttää toistuvien menettelyjen tai ohjainten testaamiseen ohjelmistosovelluksessa. Vaikka tämä ei ole ihmelääke kaikkiin testeihin, hyvä yhdistelmä yksikkötestausta, integraatiotestausta ja automaattista toiminnallista testausta takaa tyylikkäämmän lähestymistavan ohjelmistosovellusten kehittämiseen kokonaisuutena.