owncast/test
Gabe Kangas 5dff6f32fc
End to end automated tests run on Github workflows (#384)
* WIP for automated integration test

* See if it runs under a workflow

* Support running test locally as well as a workflow

* Use already downloaded repo to build. Do not re-clone

* Add comments

* Update to support new default config file

* Split out different test suites

* Add test for chat

* Always run test with config-default and ignore local config file

* Remove the build workflow because the end to end test does that now
2020-11-24 00:28:54 -08:00
..
automated End to end automated tests run on Github workflows (#384) 2020-11-24 00:28:54 -08:00
fakeChat.js Use ISO date strings. Make random delays longer. 2020-09-28 21:39:56 -07:00
httpGetTest.yaml Add some simple load tests 2020-07-15 21:40:22 -07:00
ocTestStream.sh Add cleanup to test content script 2020-10-19 21:42:52 -07:00
package-lock.json Created a fake chat message generator script for testing 2020-09-24 23:52:54 -07:00
README.md Created a fake chat message generator script for testing 2020-09-24 23:52:54 -07:00
userColorsTest.js Update chat styling 2020-10-16 17:46:44 -07:00
websocketTest.js Add some simple load tests 2020-07-15 21:40:22 -07:00
websocketTest.yaml Add some simple load tests 2020-07-15 21:40:22 -07:00

Tests

Load Tests

  1. Install artillery from NPM/Yarn/Whatever Javascript package manager is popular this week.
  2. Start an instance of the server on localhost.
  3. artillery run httpGetTest.yaml for endpoint load tests.
  4. artillery run websocketTest.yaml for websocket load tests.

Chat test

This will send automated fake chat messages to your localhost instance. Edit the messages, usernames or point to a different instance.

  1. npm install
  2. node fakeChat.js