From a5f709b4680923495f73046099fa2ae1046ad0b1 Mon Sep 17 00:00:00 2001 From: Gavin D'souza Date: Wed, 20 Sep 2023 16:56:28 +0530 Subject: [PATCH] ci: Use electron browser over chrome * Electron is already shipped along with Cypress. Can we use it? * Pass --record kwarg only if CYPRESS_RECORD_KEY envvar is set --- frappe/commands/utils.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/frappe/commands/utils.py b/frappe/commands/utils.py index 6de2885b58..da369f812f 100644 --- a/frappe/commands/utils.py +++ b/frappe/commands/utils.py @@ -850,6 +850,7 @@ def run_parallel_tests( @click.option("--headless", is_flag=True, help="Run UI Test in headless mode") @click.option("--parallel", is_flag=True, help="Run UI Test in parallel mode") @click.option("--with-coverage", is_flag=True, help="Generate coverage report") +@click.option("--browser", default="electron", help="Browser to run tests in") @click.option("--ci-build-id") @pass_context def run_ui_tests( @@ -858,6 +859,7 @@ def run_ui_tests( headless=False, parallel=True, with_coverage=False, + browser="electron", ci_build_id=None, cypressargs=None, ): @@ -905,9 +907,12 @@ def run_ui_tests( frappe.commands.popen(f"(cd ../frappe && yarn add {packages} --no-lockfile)") # run for headless mode - run_or_open = "run --browser chrome --record" if headless else "open" + run_or_open = f"run --browser {browser}" if headless else "open" formatted_command = f"{site_env} {password_env} {coverage_env} {cypress_path} {run_or_open}" + if os.environ.get("CYPRESS_RECORD_KEY"): + formatted_command += " --record" + if parallel: formatted_command += " --parallel"