Skip to content
This repository has been archived by the owner on Oct 18, 2022. It is now read-only.

Automated test of the binary builds #36

Closed
davemfish opened this issue Jul 14, 2020 · 3 comments · Fixed by #50
Closed

Automated test of the binary builds #36

davemfish opened this issue Jul 14, 2020 · 3 comments · Fixed by #50
Assignees
Labels
in progress This issue is being actively worked on task For tasks that are not new features or bugs

Comments

@davemfish
Copy link
Collaborator

It would be useful to have some end-to-end tests of the distributions we're building with electron-builder. It is especially important because our jest test suite only tests the React side of the application and uses mocks for the electron API, the flask application, and the invest CLI subprocess.

A framework like Spectron, or another inteface to chromedriver or webdriver, could run our packaged application in CI and give us confidence that the Node & Python layers of our application work together as expected.

https://www.electronjs.org/spectron
https://sites.google.com/a/chromium.org/chromedriver/
https://webdriver.io/

@davemfish davemfish added the task For tasks that are not new features or bugs label Jul 14, 2020
@davemfish davemfish self-assigned this Sep 15, 2020
@davemfish davemfish added the in progress This issue is being actively worked on label Sep 15, 2020
@davemfish
Copy link
Collaborator Author

"Spectron is the officially supported ChromeDriver testing framework for Electron." But it may not be a good choice going forward. There is no release compatible with Electron v10.

electron-userland/spectron#693

@davemfish
Copy link
Collaborator Author

Spectron / chromedriver / webdriverio, are all built around Selenium-Webdriver, which is meant for testing browser-compatibility.

We're only developing for electron (chromium) so it might make more sense to use puppeteer. See this compare & contrast: https://github.com/puppeteer/puppeteer#q-is-puppeteer-replacing-seleniumwebdriver

@davemfish
Copy link
Collaborator Author

puppeteer would also be nice because the testing-library project has bindings for it. https://github.com/testing-library/pptr-testing-library

So we can write end-to-end tests with the same API we're already using for integration tests.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
in progress This issue is being actively worked on task For tasks that are not new features or bugs
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant