Github actions integratie met Robot framework
GitHub Actions en Robot Framework bieden samen een krachtige combinatie voor automatische uitvoering van testscenario’s bij elke wijziging in je codebase. Hier is hoe je deze tools samen kunt gebruiken voor Continuous Integration en Continuous Testing in je projecten.
Introductie tot GitHub Actions
GitHub Actions is een CI/CD-service die je toestaat om automatiseringsworkflows te definiëren en uit te voeren direct binnen je GitHub-repository. Je kunt GitHub Actions gebruiken voor een verscheidenheid aan taken zoals het bouwen van code, het uitvoeren van tests, en het deployen van applicaties.
Introductie tot Robot Framework
Robot Framework is een open-source automatiseringstool voor acceptatietesting, acceptatietest-driven development (ATDD), en robotic process automation (RPA). Het maakt gebruik van keyword-driven testing, waardoor het eenvoudig te gebruiken is, zelfs voor personen die niet bekend zijn met programmeren.
Automatiseren van Robot Framework Tests met GitHub Actions
- Aanmaken van de Workflow: Creëer een .github/workflows directory in je GitHub-repository en maak daarbinnen een YAML-bestand aan voor je workflow (bijv. robot-tests.yml). Dit bestand definieert de workflow die uitgevoerd moet worden.
- Configureren van de Workflow: In het YAML-bestand, specificeer je de triggers voor de workflow (zoals push of pull request), de omgeving waar de tests moeten draaien, en de stappen die uitgevoerd moeten worden. Een basisvoorbeeld van een configuratie is als volgt:
name: Robot Framework Tests
on: push
jobs:
robot-test:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.8'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install robotframework robotframework-seleniumlibrary
- name: Run Robot Framework tests
run: |
robot --variable BROWSER:headlesschrome lesson_2
- name: Upload Test Reports as Artifacts
uses: actions/upload-artifact@v2
with:
name: robot-framework-reports
path: |
log.html
report.html
output.xml
Uitvoeren van Tests:
- Bij elke push naar de repository zullen de gespecificeerde tests automatisch worden uitgevoerd op een Ubuntu VM. De resultaten van deze tests zijn vervolgens zichtbaar binnen de GitHub Actions tab van je repository.
- Resultaten en Feedback: Na het uitvoeren van de tests, kun je de logs en resultaten van de tests bekijken. Op basis van deze resultaten kun je acties ondernemen zoals het fixen van fouten of het doorvoeren van verbeteringen in je code. De integratie van Robot Framework met GitHub Actions versnelt het testproces door automatisering en zorgt voor een constante feedbackloop, waardoor je snel kunt reageren op problemen en de kwaliteit van je software kunt waarborgen. Note, Als je een wijziging doet trapt hij op dit moment alleen een automatische test af in dit geval alleen lesson_2
Toets: zorg ervoor dat hij alle testen aftrapt.
Tip: Dit kan je doen om mijn repo te forken/clonen en het anders te organizeren en vanuit je eigen github actions
https://github.com/learn-automated-testing/robot_framework_course
Nadat je de test hebt uitgevoerd maakt hij een artifact aan die je kan downloaden naar je locale computer. Je kan uiteraard ook een koppeling maken met github pages, maar dat is niet in scope van deze tuturial
Download artifact
Rapport les 2 vanuit github actions