microl44 / Julet

Website visualizing data from my watched movies, brought forward by the jul.
3 stars 1 forks source link

Create a draft for functionality testing. #107

Closed microl44 closed 2 months ago

microl44 commented 2 months ago

Currently there's nothing really checking if one thing breaks when merging.

A solution would be to test each functionality before every merge, but a better solution would be to create automated test scripts. This could be in the form of GUI testing (Squish, Selenium, Cypress, etc), or it could be in the form of function-testing, like unit tests.

The important bit is that the process is slowly being automated more and more. Research possible testing frameworks. Keep in mind that in-house solutions would be preferable (python/perl scripts for GUI testing is possible, as an example).

microl44 commented 2 months ago

One alternative would be to use native python with the Ctypes library to create automated GUI tests. Would require a list of graphical components and their coordinates (can maybe be fetched automatically?). Could implement mouse scanning over the page, and JS functions to fetch elements on hover, and automatically click when correct element is selected.

Python might also have independent modules to conduct automatic tests for websites but that would require a pip installation and internet connection (preferably avoided).

microl44 commented 2 months ago

Python module pytest could be used. Would mean an extra dependency but can be automatically installed in the setup script.

Test branch will be created and used to deploy a proof of concept.