Playwright
Installing browsers for playwright under NixOS
Normally, at first run, playwright will tell you to run playwright install
. The purpose of this is to install browsers for you that it can then use for testing. The installation itself will technically work. Unfortunately, the installed browsers will not be suitable to be used inside NixOS. This is due to the fact that dependencies will not be at places where the browsers expect them to be. To mitigate this problem, nixpkgs has a package called playwright-driver.browsers
. Before you start your script, make sure to set
export PLAYWRIGHT_BROWSERS_PATH=/path/to/drivers
You can for example put this shell.nix
in the directory with your playwright-related code:
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
nativeBuildInputs = [
pkgs.playwright-driver.browsers
];
shellHook = ''
export PLAYWRIGHT_BROWSERS_PATH=${pkgs.playwright-driver.browsers}
export PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS=true
'';
}
Playwright with Visual Studio Code
If you are using playwright with Visual Studio Code, you may want to add vscode
to the package list shown earlier. With Visual Studio Code installed you can run nix-shell --run "code ."
to open your playwright-related directory.
Don't forget to install the Playwright Test for VSCode
extension in Visual Studio Code.
Then you should be able to run your tests in Visual Studio Code.