Sanastopohjaisen puheentunnistusohjelmiston testaustyökalu
Nevakivi, Antti (2020)
Nevakivi, Antti
2020
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202005067495
https://urn.fi/URN:NBN:fi:amk-202005067495
Tiivistelmä
Opinnäytetyön aiheena oli toteuttaa automatisoitu testaustyökalu, jolla pystyttäisiin testaamaan sanastopohjaisia puheentunnistusohjelmistoja. Työkalun toteutuksen tavoitteena oli saada luotettava tapa määrittää puhetunnistusohjelmiston suorituskykyä, luoda automaattisesti tarvittavat dokumentit testistä sekä vapauttaa yrityksen henkilöstöresursseja manuaalitestauksesta.
Vaatimuksena työkalulle oli kieliriippumattomuus, sen toimiminen erillisenä moduulina puhetunnistusohjelmiston ulkopuolella sekä helppo käyttöönotto eri toimittajien puhetunnistusohjelmistoissa.
Puhetunnistuksen vertailualgoritmi toteutettiin Python-ohjelmointikielellä. Algoritmin toiminnallisuutena oli ottaa viestintärajapinnan lähettämä viesti vastaan ja verrata sitä ennalta määriteltyyn taulukkoon. Työkalua varten rakennettiin viestintärajapinta C-ohjelmointikielellä. Rajapinnan tarkoituksena oli ottaa viesti puheentunnistusohjelmistolta, alustaa kommunikaatioväylä yllämainittua vertailualgoritmia varten ja lähettää viesti vertailualgoritmille.
Opinnäytetyön lopputuloksena oli vaatimuksia vastaava testaustyökalu, jolla pystyttiin automatisoimaan paikallisten puheentunnistusohjelmistojen testit. Työkalun toiminnallisuuden määritystä varten suoritetuissa testeissä työkalu saavutti täysin samat tulokset kuin manuaalitestaus. The subject of this thesis was to create and implement an automated testing tool capable of testing grammar-based speech recognition software. The purpose of the tool implementation was to provide a reliable way to determine the performance of the device in question, to automatically generate the necessary documentation from the test, and to free the company staff from manual testing.
The requirements for the tool are that it must be language independent, to function as a separate module outside of the speech recognition software and should be easily deployable to various grammar-based speech recognition softwares.
The speech recognitions comparison algorithm was created with Python programming language. The functionality of the algorithm was to receive a message from the communication interface and to compare it to predefined data table. A communication interface was also created for the testing tool. The communication interface was written by using C programming language. The function of the communication interface was to initialize the communication interface, receive a message from the speech recognition software and send it to the algorithm.
In this thesis a new testing tool was created for replacing the manual testing of local speech recognition software with an automated solution. In tests performed to determine the functionality of the tool, the tool achieved the same exact results as manual testing.
Vaatimuksena työkalulle oli kieliriippumattomuus, sen toimiminen erillisenä moduulina puhetunnistusohjelmiston ulkopuolella sekä helppo käyttöönotto eri toimittajien puhetunnistusohjelmistoissa.
Puhetunnistuksen vertailualgoritmi toteutettiin Python-ohjelmointikielellä. Algoritmin toiminnallisuutena oli ottaa viestintärajapinnan lähettämä viesti vastaan ja verrata sitä ennalta määriteltyyn taulukkoon. Työkalua varten rakennettiin viestintärajapinta C-ohjelmointikielellä. Rajapinnan tarkoituksena oli ottaa viesti puheentunnistusohjelmistolta, alustaa kommunikaatioväylä yllämainittua vertailualgoritmia varten ja lähettää viesti vertailualgoritmille.
Opinnäytetyön lopputuloksena oli vaatimuksia vastaava testaustyökalu, jolla pystyttiin automatisoimaan paikallisten puheentunnistusohjelmistojen testit. Työkalun toiminnallisuuden määritystä varten suoritetuissa testeissä työkalu saavutti täysin samat tulokset kuin manuaalitestaus.
The requirements for the tool are that it must be language independent, to function as a separate module outside of the speech recognition software and should be easily deployable to various grammar-based speech recognition softwares.
The speech recognitions comparison algorithm was created with Python programming language. The functionality of the algorithm was to receive a message from the communication interface and to compare it to predefined data table. A communication interface was also created for the testing tool. The communication interface was written by using C programming language. The function of the communication interface was to initialize the communication interface, receive a message from the speech recognition software and send it to the algorithm.
In this thesis a new testing tool was created for replacing the manual testing of local speech recognition software with an automated solution. In tests performed to determine the functionality of the tool, the tool achieved the same exact results as manual testing.