Improving CI Testing via local DEV/Forem Instance
Turnerj opened this issue · comments
Currently the testing occurs on the live DEV site with a number of public API calls to GET endpoints. This isn't sustainable while building a testable solution.
While it could be enough to just write mocking tests, that really doesn't test anything with a library like this. I would rather that the tests keep up with the current version of DEV/Forem and make sure we don't have any subtle API failures with the latest versions.
To do this, it will require running a local instance of DEV/Forem with data seeded in the DB for the various read/write operations available via the API.
@Turnerj do you know about any "easy" way to get a local instance of Forem and the DB running in AppVeyor?
Unfortunately not. From looking at the DEV repo itself, it seems like it might be easiest to run a container on the CI as that might require the least dependencies.
https://github.com/thepracticaldev/dev.to/#prerequisites
https://docs.dev.to/installation/
I haven't run a container before on AppVeyor so I'm not entirely sure of the process required.
Another reason for moving to a local instance is that we are now starting to hit API limits against the live site. This was always bound to happen but will make testing a little more difficult now that it does.
heads up: I created this issue in Forem repository
forem/forem#9408