Testing

In order to evaluate the quality of AI Podcast functionality, we conducted Integration test, Functional test and Performance test

Testing Strategy

Functional Test

  • Unit Test: LocalSingleAgentScript, OpenAISingleAgentScript, MultiAgentScript, TextToSpeechFunction, VideoGeneration, TextToImage
  • User Interface: Test User Interface is well design and responsive

Performance Test

  • Speed Test: Test the speed of each podcast generation

Functional Test

Unit Test: LocalSingleAgentScript

script Image 1
Unit test for all methods under LocalSingleAgentScript class

In the code, we have test all methods of LocalSingleAgentScript. The LocalSingleAgentScript is an implementation of script generation try to replicate a solo podcast script. To make sure thats the result is right and as expected we got all tests passed the test. For OpenAISingleAgentScript, the test are similar provided that OpenAI key are needed and a little bit of tweak.

Unit Test: MultiAgentScript

Unit test multiAgentScript for generation of local LLM

The multiAgentScript composes of generation text with local LLM and server OpenAI, the above code test if local LLM works

Unit Test: TextToSpeechFunction

Unit test for change Text to Speech

In our TextToSpeech Function, we used Elevenlabs and IBM Watson API. However, they were some problems testing this but nothing major that would affect the final product

Unit test for change Text Processing for Image creation

For image creation, we used stability API to create appropriate image for podcast, we also create extract keyword functions.

User Interface test:

Multiple users including three team members have been using the website, the users experience is great and the user interface is very user friendly.

  • Sittivit Bunlungsak (Ken): ken.bunlungsak.22@ucl.ac.uk
  • Kang Shen: kang.shen.22@ucl.ac.uk
  • Kirill Kamakaev: kirill.kamakaev.22@ucl.ac.uk
  • Tatsan Kantasit (Scooter): scooterkingen@gmail.com

Performance Test

Speed Test:

We measured CPU and GPU needed to run Local LLM and the time it would take for the whole generation. The average time for a single podcast script to be generated takes around 10-20 seconds for RTX 3060 and AMD Ryzen 7 5800H. However, for duo podcast, the time varies.