Integratie van Katalon Studio met GitLab CI/CD
Voor CICD doeleinden is meestal een docker image van Katalon nodig die vervolgens kan worden geïntegreerd met Katalon Studio. Gebruik de officiële Katalon Docker image om uw tests in GitLab CI/CD uit te voeren. Deze image is vooraf geconfigureerd met alle noodzakelijke afhankelijkheden voor het uitvoeren van Katalon Studio.
De referentie van de docker images kan worden geïmplementeerd in verschillende cicd producten. We zullen ze opsommen
- GitLab CI/CD Configuratie:
- Maak een .gitlab-ci.yml bestand aan in de hoofdmap van uw project.
katalon-test:
image: katalonstudio/katalon
script:
- katalonc -noSplash -runMode=console -projectPath="path/to/your/project" -retry=0 -testSuitePath="Test Suites/YourTestSuite" -executionProfile="default" -browserType="Chrome (headless)"
- Uitvoering: Commit en push deze configuratie naar uw GitLab repository. GitLab CI/CD zal automatisch deze configuratie gebruiken om uw Katalon tests uit te voeren in de gedefinieerde Docker container.
Integratie van Katalon Studio met GitHub Actions
- GitHub Actions Workflow:
- Maak een workflow bestand aan (bijv., .github/workflows/katalon.yml) in uw GitHub repository.
- Gebruik de Katalon Docker image binnen de workflow om uw tests uit te voeren.
name: Katalon Studio Test Execution
on: [push]
jobs:
build:
runs-on: ubuntu-latest
container: katalonstudio/katalon
steps:
- uses: actions/checkout@v2
- name: Run Katalon Studio Tests
run: katalonc -noSplash -runMode=console -projectPath="$GITHUB_WORKSPACE" -retry=0 -testSuitePath="Test Suites/YourTestSuite" -executionProfile="default" -browserType="Chrome (headless)"
– Uitvoering: Telkens wanneer u wijzigingen naar uw repository pusht, zal GitHub Actions automatisch de workflow uitvoeren, waarbij uw Katalon tests in het proces worden uitgevoerd.
Integratie van Katalon Studio met Jenkins
- Docker Plugin: Zorg ervoor dat uw Jenkins setup de Docker plugin geïnstalleerd heeft om Docker containers te kunnen draaien.
- Jenkins Pipeline:
- Maak een nieuwe Jenkins Pipeline job aan.
- Gebruik het Pipeline script om stappen te definiëren die de Katalon Docker image pullen en uw tests uitvoeren.
pipeline {
agent {
docker { image 'katalonstudio/katalon' }
}
stages {
stage('Test') {
steps {
sh 'katalonc -noSplash -runMode=console -projectPath="/path/to/your/project" -retry=0 -testSuitePath="Test Suites/YourTestSuite" -executionProfile="default" -browserType="Chrome (headless)"'
- Uitvoering: Voer de pipeline uit om uw Katalon tests uit te voeren binnen een door Jenkins beheerde Docker container.
Integratie van Katalon Studio met Azure
Voorwaarden
- Een Azure DevOps account en een opgezet project.
- Uw Katalon Studio project is gecontroleerd in een repository in Azure DevOps.
- Bekendheid met het maken van pipelines in Azure DevOps.
Stappen om Katalon Studio te integreren met Azure DevOps
-. Bereid uw Katalon Studio Project voor
- Zorg ervoor dat uw Katalon Studio project is opgeslagen in een Git repository in Azure DevOps.
- Voeg een Dockerfile toe aan uw project als u van plan bent een aangepaste Docker image te gebruiken, of zorg ervoor dat uw pipeline is geconfigureerd om de officiële Katalon Docker image direct te gebruiken.
- Maak een nieuwe Pipeline
- Ga in uw Azure DevOps project naar Pipelines > Nieuwe pipeline.
- Kies waar uw code is opgeslagen (Azure Repos Git in dit geval), en selecteer uw repository.
- Configureer uw Pipeline
U heeft de optie om de klassieke editor of YAML te gebruiken om uw pipeline te definiëren. Hier zullen we ons richten op de YAML configuratie voor het gebruik van Docker.
- Selecteer de YAML optie en begin met het configureren van uw pipeline. U kunt beginnen met een sjabloon of een nieuw YAML bestand aanmaken.
- Voeg de volgende stappen toe aan uw YAML bestand. Dit voorbeeld gebruikt de officiële Katalon Docker image om uw tests uit te voeren. Pas de command line opties (katalonc commando) aan volgens de behoeften van uw project.
trigger:
- main
pool:
vmImage: 'ubuntu-latest'
container:
image: katalonstudio/katalon
steps:
- script: |
katalonc -noSplash -runMode=console -projectPath="$(System.DefaultWorkingDirectory)/your-katalon-project-folder" -retry=0 -testSuitePath="Test Suites/YourTestSuite" -executionProfile="default" -browserType="Chrome (headless)" -apiKey="<Your_Katalon_API_Key>"
displayName: 'Execute Katalon Studio Tests'
Voor alle Vervang your-katalon-project-folder door het pad naar uw project binnen de repository, YourTestSuite door de naam van uw testsuite, en <Your_Katalon_licence/api_Key>
- Voer uw Pipeline uit
-
Sla uw pipeline op en voer deze uit. Azure DevOps zal de pipeline uitvoeren op de gespecificeerde trigger, de Docker container gebruiken om uw Katalon Studio tests uit te voeren, en de resultaten terugrapporteren in de samenvatting van de pipeline run. *. Bekijk Testresultaten
-
Om testresultaten beter te kunnen bekijken en analyseren binnen Azure DevOps, kunt u overwegen om testresultaten van Katalon Studio te exporteren in een formaat dat Azure DevOps kan interpreteren (bijv., JUnit XML) en de testresultaten te publiceren als onderdeel van uw pipeline stappen. Azure DevOps stelt u ook in staat om te integreren met verschillende extensies en plugins om de mogelijkheden van uw CI/CD pipeline te verbeteren, inclusief rapportage van testresultaten, beheer van artefacten, en meer. Deze integratie zorgt ervoor dat uw Katalon Studio tests een integraal onderdeel zijn van uw ontwikkelingspipeline, waardoor continue testing en deployment met Azure DevOps wordt gefaciliteerd.
Best Practices
- Houd uw Test Scripts Onder Versiebeheer: Zorg ervoor dat uw Katalon Studio project onder versiebeheer staat met GitLab of GitHub om naadloos te integreren met hun respectievelijke CI/CD pipelines.
- Beheer Testdata en Rapporten: Configureer uw CI/CD pipeline om testdata te verwerken en rapporten op te slaan. Bijvoorbeeld, u kunt testrapporten archiveren als artefacten in GitLab CI/CD of GitHub Actions.
- Optimaliseer Testuitvoering: Gebruik testsuite collecties in Katalon Studio om de uitvoering van meerdere testsuites te organiseren en te beheren, mogelijk parallel, om de totale testuitvoeringstijd te verminderen.