Resources & Tools - JU-DEV-Bootcamps/ERAS GitHub Wiki

Purpose

This page is the central hub for all essential links, tools, and systems used by the QE team.

Environment configuration

These are the environments where you will test and validate features.

Environment URL Purpose Notes
Dev [Development] Used by developers for initial testing No certifications applied needed
Staging [EC2] Pre-production environment Used for release validation
Production [Production] Live system Certifications applied might be needed

Service Providers Configuration

The application integrates with Cosmic Latte external service, a third-party service provider embedded into the application.

  • Service URL: Comic Late environment
  • Credentials: Registration process should be completed and Technical lead should grant access to obtain verification code

πŸ”‘ Access & Credentials

  • Access is managed via: [360 ID for Production and EC2 and via registration for Development environment]
  • Credentials should never be shared publicly

QE Responsibilities

  • Validate correct integration with Cosmic Latte
  • Verify environment-specific configurations
  • Test error handling and fallback scenarios
  • Confirm data consistency between systems

Project Management Tools

These tools are used to track work, bugs, and sprint progress.

Project Management System

πŸ“Œ Usage

  • Track user stories and bugs
  • Update ticket status
  • Add comments and evidences during ticket testing

UI/UX Design (Figma)

Figma is used as the source of truth for UI/UX designs and mockups.

πŸ“Œ How QE Uses Figma

  • Validate UI against designs
  • Check spacing, alignment, and visual consistency
  • Review expected behaviors (hover states, transitions, etc.)
  • Clarify requirements when acceptance criteria are unclear

⚠️ Best Practices

  • Always compare implemented UI with the latest design version
  • Confirm with Product/Design if discrepancies are found
  • Pay attention to responsive behavior (if defined)

Test Case Management

This is where test cases are created, maintained, and executed.

Tool: Test Link

πŸ“Œ When to Use

  • Create new test cases
  • Update existing ones
  • Execute test cycles for build versions
  • Prepare and execute Regression tesitng

APIs & Technical Documentation

Used for backend validation and integration testing.

Swagger / API Docs: Swagger Postman Collection: Internal Documentation:

πŸ“Œ When to Use

  • Validate API responses for backend tickets
  • Test edge cases
  • Understand request/response structure

Code Repositories

Access to repositories and version control.

CI/CD & Deployment Tools

Tools used for builds, deployments, and pipelines.

CI/CD Tool: GitHub Actions

πŸ“Œ QE Responsibilities

  • Monitor deployments
  • Validate successful builds
  • Perform smoke testing after deployment
  • Monitoring & Logs (Optional but Recommended)

Common Access Issues

  • Missing permissions β†’ Contact [team/channel]
  • Expired credentials β†’ Reset via [system]

Automation Process

This is a quick guide on how to setup and use vscode for automating test cases on the project.

Playwright is an open-source automation library developed by Microsoft that lets you control Chromium, Firefox, and WebKit using a single API. It features built-in auto-waiting so you do not have to write manual delays.

Core Playwright Features

Auto-Waiting: Waits for elements to be visible and actionable before clicking or typing. Eliminates flaky test errors caused by slow-loading elements.

Browser Contexts: Creates isolated, incognito-like sessions within a single browser instance. Allows parallel multi-user testing without heavy resource overhead.

Trace Viewer: Captures DOM snapshots, network logs, and action screenshots on failure. Makes debugging failed automation runs fast and visual.

Cross-Browser: Supports Chromium, Firefox, and WebKit natively from one script. Ensures your web workflows function identically across rendering engines.

πŸ“– Wiki Guide: Web Automation Setup with Playwright & VS Code

This guide provides a complete, step-by-step walkthrough to install, configure, and execute automated tests using Playwright. No programming knowledge is required, as we will utilize automated recording tools to generate test scripts while bypassing mobile MFA and corporate VPN restrictions.


πŸ”’ 1. Security, NDA Compliance & Prerequisites

Click to expand security details & prerequisites

Before starting, please note our corporate security compliance:

  • NDA Compliance: Playwright runs 100% locally on your machine. It does not upload screenshots, videos, or network data to external cloud servers.
  • VPN Requirement: You must remain connected to the company VPN since the target platform resides within an internal network environment.
  • Data Best Practices: During text recording, never input real customer names, production credentials, or real credit card numbers. Use fictitious test data.

Required Software to Install:

  1. Node.js: Download and install the LTS version from nodejs.org. (Accept all default setup selections).
  2. Visual Studio Code (VS Code): Download and install the editor from ://visualstudio.com.

πŸ› οΈ 2. Initial Project Setup

Click to expand initialization commands

Follow these steps to create your working directory and install the Playwright automation framework:

  1. Open your computer's Command Prompt (ensure you use Command Prompt and NOT PowerShell to avoid Windows security blocks).
  2. Create a new directory and navigate inside it by running:
    mkdir mi-proyecto-automation
    cd mi-proyecto-automation
  3. Initialize the official Playwright package:
    npm init playwright@latest
  4. Respond by pressing the Enter key for every question to accept the recommended default parameters (This configures TypeScript and automatically downloads the browser binaries).
  5. Launch VS Code, go to the top menu, select File > Open Folder, and open your mi-proyecto-automation folder.
  6. Go to the Extensions icon (four square blocks on the left sidebar), search for Playwright Test (developed by Microsoft), and click Install.

πŸ”‘ 3. One-Time Login Setup (Generating the auth.json file)

Click to expand session saving steps

To record and run tests without typing your password or completing the mobile MFA every single time, we must generate a local file named auth.json to store your secure session tokens:

  1. Open a new terminal in VS Code (Terminal > New Terminal) and ensure it is set to Command Prompt.
  2. Run this exact command to launch a browser that ignores security certificates and tracks your login details:
    npx playwright codegen --ignore-https-errors --save-storage=auth.json "https://10.24.80"
  3. Log in manually with your corporate email, password, and approve the MFA on your phone.
  4. Once you reach the main dashboard, wait 10 seconds and click on any menu to ensure the cookies bind to the IP address.
  5. The Birth of auth.json: Now, close the browser window. The recording process will end, and a brand-new file named auth.json will automatically appear inside your project folder root. This file contains your encrypted temporary session keys.

βš™οΈ 4. Permanent Profile Configuration

Click to expand config and shortcut parameters

To enable smooth recording and execution, we must declare our persistent parameters in two internal files:

  1. Open playwright.config.ts, locate the use: { block, and add these lines:
      use: {
        ignoreHTTPSErrors: true,
        storageState: 'auth.json',
        baseURL: 'https://10.24.80',
        trace: 'on-first-retry',
      },
  2. Open package.json, locate the "scripts": { block, and add our recording shortcut command:
      "scripts": {
        "grabar": "npx playwright codegen --ignore-https-errors --load-storage=auth.json \"https://10.24.80\""
      },
  3. Save all changes (Ctrl + S) and restart Visual Studio Code.

⏺️ 5. Recording New Test Scenarios Autonomously (Saving Your Work)

Click to expand recording and manual file creation workflow

Corporate firewalls block blank screen initializations from graphical extensions. Always use our tailored command line shortcut to record already logged-in sessions instantly. Since it runs in recording mode, you will need to manually save the code generated at the end:

  1. Open your terminal in VS Code (Command Prompt) and execute:
    npm run grabar
  2. The browser will open already logged into the dashboard, bypassing the MFA login completely.
  3. Perform your test scenario actions normally (e.g., clicking on school students, opening profiles).
  4. When finished, do not just close the browser. Look at the gray window called Playwright Inspector.
  5. In the top right corner of the gray window, click the Copy (clipboard) button. This saves your newly recorded test code. Now you can safely close the browser.
  6. Creating the New File: Go to VS Code, right-click the tests folder on the left sidebar, and select New File.
  7. Name your file using lowercase and hyphens, ending strictly with .spec.ts (e.g., student-verification.spec.ts).
  8. Open the new blank file, paste the copied code using Ctrl + V, and save it using Ctrl + S.

▢️ 6. Running and Renaming Saved Tests Visually

Click to expand test playback guidelines

Once your script file is saved inside the tests folder, you can trigger Playwright to visually replicate the sequence at any time without terminal commands:

  1. Click the Testing icon (laboratory flask) on the left sidebar of VS Code.
  2. Watch the execution visually: Ensure the Show browser checkbox is enabled in the lower-left Tools panel.
  3. Find your test file in the list and click the green Play (β–Ά) button located next to its name.
  4. Playwright will launch the browser, automatically inject the auth.json cookies, and replicate your entire workflow autonomously in seconds, marking it with a green checkmark (βœ“) upon success.

🧭 Best Practices

  • βœ… Keep this page updated when tools or URLs change
  • βœ… Do not share sensitive credentials in the wiki
  • βœ… Validate access during your first days

πŸ’‘ If you notice missing or outdated links, please update this page or notify the owner.

⚠️ **GitHub.com Fallback** ⚠️