GMOD / jbrowse-components

Source code for JBrowse 2, a modern React-based genome browser
https://jbrowse.org/jb2
Apache License 2.0
206 stars 62 forks source link

plugin integration testing framework #1146

Closed rbuels closed 3 years ago

rbuels commented 4 years ago

To really test a plugin, you need to be able to write automated integration (e2e) tests against a release of jbrowse-web. There are quite a few things to solve to make this happen.

Probably need jbrowse-web and plugins to be either npm installable so that you can make them devDependencies of your plugin, or provide some other convenient means that integration tests can use to install them.

depends on #1159

cmdcolin commented 4 years ago

for jbrowse-web to be "just a component that is npm installed", emphasizing that it's just a component that can be used as a devdependency or in an app:

similar to ihh abrowse example where it is transforming a CRA to a npm installable component

rbuels commented 4 years ago

Maybe people don't actually install jbrowse-web, they use createTestSession with some plugins that they can install as devDependencies from npm

rbuels commented 3 years ago

Test framework setup tools in packages/development-tools that automate setting up an integration testing environment for a plugin.

Will download an actual built JB2 release, and setup end to end testing with it.

Exactly how the E2E environment is constructed is up to the implementer.

cmdcolin commented 3 years ago

this was technically fixed by the cypress workflow on the templates