I am using Cypress
for my e2e tests and k6
for my performance tests.
They are both in Javascript and access the same config json files (I use this for my environment variables).
The folder structure looks like this:
|- config
|- cypress
|- k6
|- cypress.json
|- package-lock.json
|- package.json
I am fine with this currently as I only need to maintain one repository. My npm packages
sit on same repo as well which is good if both tools would like to use them. I also have one yaml
file which I use for my CI pipeline and can be interchanged via scripts placed under the package.json
file.
However, I am having doubts if this is the right approach if we scale further. It might become this big monolith where everyone needs to access the same repo and multiple QA's doing multiple PR's.
Our organization relies heavily on the regression test suite, hence, we separated our e2e test from our codebase (devs still think of unit tests as an afterthought - slowly trying to change that but we're not there yet).