Hoy el problema que traigo es algo simple pero que está mal en la documentación oficial de Katalon. Katalon es una herramienta de testing automático de front end que permite ejecutar los test utilizando distinos navegadores.
Esto que voy a contar podemos aplicarlo tanto a la ejecución por linea de comando a través de Katalon runtime engine como en un script de Github actions.
Siguiendo la documentación oficial el parámetro a usar para seleccionar el navegador con el que quieres pasar los tests es -broserType con las siguientes opciones:
En mi caso he puesto los siguientes comandos para ejecutar la github action para ejecutar los tests de Katalon:
name: katalon Tests Suite MX
on:
workflow_dispatch:
jobs:
build:
runs-on: windows-latest
steps:
- name: Checkout KATALON_STUDIO_ASSIST
uses: actions/checkout@v4
- name: Execute Test Suite Test
uses: katalon-studio/katalon-studio-github-action@v4.0
with:
version: '9.6.0'
projectPath: '${{ github.workspace }}'
args: '-noSplash -retry=0 -browserType="Edge (Chromium)" -testSuitePath="Test Suites/MX" -apiKey= ${{ secrets.KATALON_API_KEY }} -executionProfile="QA_Mexico" --config -webui.autoUpdateDrivers=true'
Y en respuesta recibo el siguiente error.
Generating global variables...
579Start reloading plugins...
584Katalon version: 9.6.0
587Start checking license task
59010:21:52.180 [main] DEBUG com.kms.katalon.core.testdata.TestDataFactory - Finding test data with id 'Data Files/MX/TestData'
59110:21:52.224 [main] DEBUG com.kms.katalon.core.testdata.TestDataFactory - Test data is excel file, reading excel file
59210:21:52.225 [main] DEBUG com.kms.katalon.core.testdata.TestDataFactory - Reading excel file with source file 'D:\a\KATALON_STUDIO_ASSIST\KATALON_STUDIO_ASSIST\MX_TESTDATA.xlsx' and sheet name 'sheet'
596com.kms.katalon.execution.core.exceptions.ExecutionException: com.kms.katalon.execution.exception.InvalidConsoleArgumentException: Invalid browser: 'Edge (Chromium)'
597 at com.kms.katalon.execution.console.entity.TestSuiteLauncherOptionParser.getConsoleLauncher(TestSuiteLauncherOptionParser.java:335)
598 at com.kms.katalon.execution.console.ConsoleExecutor.execute(ConsoleExecutor.java:74)
599 at com.kms.katalon.console.application.ConsoleMain.launch(ConsoleMain.java:158)
600 at com.kms.katalon.console.application.ConsoleApplicationStarter.start(ConsoleApplicationStarter.java:34)
601 at com.kms.katalon.application.Application.runConsole(Application.java:140)
602 at com.kms.katalon.application.Application.start(Application.java:100)
603 at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
604 at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
605 at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
606 at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402)
607 at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
608 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
609 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
610 at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
611 at java.base/java.lang.reflect.Method.invoke(Method.java:568)
612 at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
613 at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
614 at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
615Caused by: com.kms.katalon.execution.exception.InvalidConsoleArgumentException: Invalid browser: 'Edge (Chromium)'
616 at com.kms.katalon.execution.console.entity.TestSuiteLauncherOptionParser.createRunConfiguration(TestSuiteLauncherOptionParser.java:416)
617 at com.kms.katalon.execution.console.entity.TestSuiteLauncherOptionParser.internallyBuildRunConfig(TestSuiteLauncherOptionParser.java:379)
618 at com.kms.katalon.execution.console.entity.TestSuiteLauncherOptionParser.buildRunConfig(TestSuiteLauncherOptionParser.java:355)
619 at com.kms.katalon.execution.console.entity.TestSuiteLauncherOptionParser.getConsoleLauncher(TestSuiteLauncherOptionParser.java:332)
621Start clean up session
622End check license task
La solución es simple basta con quitar los "()" parentesis y poner el parámetro así
-browserType="Edge Chromium"
Y no como dice la documentación.
Referencias:
Command Line Syntax
Post en el foro de Katalon