Keyboard shortcuts

Press ← or β†’ to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

πŸ“Š Vendor Automation Dashboard

Home Section

The Home Section of the Vendor Integration Testing Dashboard is the central hub for managing, monitoring, and triggering automation tests across different environments. πŸ“ URL:

[

vendor-integration-tests.hh-ballbot.my.id

https://vendor-integration-tests.hh-ballbot.my.id/home

](https://vendor-integration-tests.hh-ballbot.my.id/home)

🏠 Overview

The Home page provides a quick snapshot of:

  • βœ… Total & Successful Runs
  • ❌ Failed Runs
  • πŸš€ Trigger buttons for automation
  • πŸ“ˆ Recent Run Stats & Artifacts
  • πŸ•’ Recent Activity Log

πŸ” Environments Supported

EnvironmentDescription
BallbotDevelopment/Staging environment for internal QA
VenusPre-production/UAT environment
ProductionLive production environment for real users

πŸ“¦ Sections Breakdown

πŸ“Œ 1. Summary Statistics

Quick glance at the run stats per environment.

MetricDescription
Total RunsNumber of test runs executed in each env
Successful RunsRuns that completed without failure
Failed RunsRuns that encountered one or more failures

πŸš€ 2. Trigger Automation

Use this section to manually trigger a test run in the selected environment.

🧩 Buttons:

  • Trigger HH-ballbot
  • Trigger HH-venus
  • Trigger HH-production

πŸ” What happens when clicked:

  • Initiates GitHub Actions workflow using workflow_dispatch
  • Selects the corresponding environment (env)
  • Generates master data based on that environment’s configuration
  • Runs tests using Playwright across shards
  • Uploads Allure report

⚠️ Always confirm the selected environment before triggering, especially for Production.

πŸ“ 3. Recent Artifact Statistics

Displays information about the last completed test run, including:

FieldDescription
Last ActivityName of the environment that was last run
Run NumberCorresponding GitHub Actions run_number
Report NameTitle of the report (e.g., Allure Report)
Test StatsBreakdown of Passed, Failed, Broken, Skipped
Execution TimeStart time, stop time, and duration

πŸ—‚ 4. Recent Activities Table

A log of recent test runs with status and quick access to the report.

ColumnDescription
EnvironmentWhere the test was run (Ballbot/Venus/Production)
Run IDGitHub Actions run number
StatusPass/Fail/Running/Pending
Last UpdatedTimestamp of the last activity for that run
ActionButton to "See Result" β€” opens the Allure Report

🧾 Master Data

πŸ“ URL Examples:

  • Ballbot:

[

vendor-integration-tests.hh-ballbot.my.id

https://vendor-integration-tests.hh-ballbot.my.id/master-data/restaurants/hh-ballbot

](https://vendor-integration-tests.hh-ballbot.my.id/master-data/restaurants/hh-ballbot)

  • Venus:

[

vendor-integration-tests.hh-ballbot.my.id

https://vendor-integration-tests.hh-ballbot.my.id/master-data/restaurants/hh-venus

](https://vendor-integration-tests.hh-ballbot.my.id/master-data/restaurants/hh-venus)

  • Production:

[

vendor-integration-tests.hh-ballbot.my.id

https://vendor-integration-tests.hh-ballbot.my.id/master-data/restaurants/hh-production

](https://vendor-integration-tests.hh-ballbot.my.id/master-data/restaurants/hh-production)

πŸ“š Purpose of Master Data

Before running automation tests, the test system needs to know which restaurant IDs are mapped to which inventory sources. This data is used to:

  • Dynamically load inventory setup
  • Ensure accurate test payloads per vendor
  • Scope tests to only available restaurants for each environment

🧩 Supported Inventory Sources

Inventory SourceDescription
HungryHubInternal inventory platform
TableCheckTableCheck partner integration
WeeloyWeeloy integration
SevenroomSevenroom partner integration

πŸ“‹ How to Use the Master Data Page

1. πŸ”˜ Select Environment

Each environment has its own data set:

  • Ballbot β†’ /hh-ballbot
  • Venus β†’ /hh-venus
  • Production β†’ /hh-production

βœ… Switching between environments will load only the data relevant for that environment.

2. βž• Add New Restaurant

Click the "Add New" button at the top.

Required Fields:

FieldDescription
Restaurant IDInternal ID used in reservation API
Inventory SourceChoose from HungryHub, TableCheck, etc.

After submission:

  • The restaurant will appear in the table.
  • This entry is now usable in automated test cases.

3. πŸ—‘οΈ Delete Restaurant Entry

Each row includes a Delete button.

  • Deletes the restaurant from the environment-specific dataset.
  • This will exclude the restaurant from the next automation run.

⚠️ Deleting an entry does not affect other environments.

πŸ“Š Table Columns

ColumnDescription
No.Serial number
Restaurant IDInternal ID used in API and automation
Inventory SourceThe vendor/source mapped to the restaurant
ActionButton to delete the entry

πŸ” Data Sync Behavior

Once updated:

  • The entries are used during npm run generate-master-data
  • Restaurant entries will be injected into:
    • restaurantData.json
    • Used by runVendorTests() inside Playwright test files Each environment's dataset is isolated, ensuring:
  • No accidental test pollution across environments
  • Accurate targeting of test data based on deployment stage

βœ… Best Practices

  • Keep at least one testable restaurant per inventory source in each environment
  • Match restaurant IDs with real/test data available in the corresponding system
  • Clean up obsolete entries to prevent unnecessary test failures