Back to portfolio
Automation Showcase
Playwright + Cucumber BDD framework
A maintainable, scalable automation framework built on the Page Object Model — from Gherkin specs all the way to a green CI pipeline.
Page Object Model
Reusable, maintainable locators
Cucumber BDD
Business-readable Gherkin specs
CI/CD
Jenkins + Docker execution
BDD structure
features/rekam-medis.feature
1Feature: Edit Rekam Medis — Ringkasan Pasien Pulang2 3 Background:4 Given a QA user is logged in to Hospita5 And a patient with an active visit exists6 7 @rawat-jalan @regression8 Scenario: Save a valid discharge summary9 When I open "Edit Rekam Medis"10 And I fill the discharge summary fields11 And I click "Simpan"12 Then the summary is saved successfully13 And a success notification is shownFolder structure
aido-automation
▸ aido-automation/
▸ features/
rekam-medis.feature
eklaim.feature
▸ pages/
MedicalRecordPage.ts
LoginPage.ts
▸ steps/
rekam-medis.steps.ts
▸ support/
world.ts
hooks.ts
▸ reports/
playwright.config.ts
Jenkinsfile
Execution report
Playwright HTML Report
164 / 164 passed
164
Passed
0
Failed
48s
Duration
rawat-jalan · edit rekam medis1.2s
gawat-darurat · discharge summary0.9s
rawat-inap · settlement piutang1.6s
eklaim · simpan data klaim1.1s
Trace viewer
trace.playwright.dev — rekam-medis.feature
Actions
page.goto
getByTestId.click
fill discharge form
click Simpan
expect toast visible
DOM snapshot · before / action / after
click Simpan → passed
Pipeline
Jenkinsfilebash
1# Jenkins pipeline (declarative)2pipeline {3 agent { docker { image 'mcr.microsoft.com/playwright' } }4 stages {5 stage('Install') { steps { sh 'npm ci' } }6 stage('Test') { steps { sh 'npm run test:bdd' } }7 stage('Report') { steps { sh 'npm run report' } }8 }9}Checkout
git clone aido-automation
Install
npm ci · Docker container
Test
Playwright + Cucumber BDD
Report
HTML report + video artifacts
Notify
Google Chat status update