xk6-browser v0.7.0 is here! 🎉
We've been busy preparing for big changes in the future, so this minor release is smaller than usual. It contains a new feature to unblock users using dialog
boxes, a fix, and internal improvements.
Experimental Module Merge into k6
We're excited to reveal that in an upcoming future release of k6
you will be able to run browser tests -- we're merging xk6-browser
into k6
. The merge will expose the browser tests via an experimental module importable with k6/experimental/browser
, so expect a small breaking change there. We now have a solid foundation, and to help us shape it into a better tool we need more people to use it; this is why we're doing the merge. It's worth noting that we're not merging the two code bases into a single one.
This might mean we will eventually stop releasing new versions of xk6-browser
binaries, and instead point people to the latest release of k6
. When it comes to building xk6-browser
from source, that won't change, so you will still be able to build from source the same way you have been doing so already.
Bugs fixed
xk6-browser
no longer panics when it navigates to a website that containsiframes
which themselves navigate to a different origin to the mainframe
(e.g. a website containing an embedded Youtube video). (#677)
New features
xk6-browser
will now automatically dismiss dialog boxes (alert
,confirm
,prompt
, andbeforeunload
). (#663)
Improvements
-
Improved launching of a browser without providing any options. (#649)
We couldn't launch a new browser without providing an empty object. We've fixed this, so now you can launch a new browser without an empty object.
With the empty object:
const browser = chromium.launch({});
Without the empty object:
const browser = chromium.launch();
Documentation
-
Updated the demo video on our README. (#639)
Now it shows the usage for xk6-browser version v0.6.0 and above.
-
Simplified the README. (#656)
You can now find the documentation here.
-
Updated the project roadmap. (#658)
Internals
-
Upgraded
k6
dependency tov0.42.0
. (#?) -
Refactored the lifecycle events code. (#647, #644)
This shouldn't change any existing behavior, but if you notice anything that doesn't work as expected, please let us know.
-
Cleanup unused dependencies. (#674)
Experimental Module Merge into k6
Here are some internal changes that will help us achieve the merge goal in the near future (we still have some more work to do before we can do the merge):