1

Tools And Applications

 Mandatory

Helpful

 

 

 

 

2

Server

Server setup

  1. Download remote desktop client i.e. Remote Desktop Connection for Windows
  2. Add servers group (under File tab)
  3. Add server
  4. Edit Properties:
  5. Add server name - IP 
  6. Add Display name - QA, Admin, F1, F2 and so on
  7. Edit Logon Credentials - untick a checkbox and provide credentials (Shared credentials available here)
  8. Login to server
  9. Create your user if needed - with administrator privileges
  10. ALWAYS Sign out this way after finishing your work:

 

Servers IPs 

Office Beru VPN 87.116.29.62 as main and 1st choice.

If you will face any problems connect to Backup Beru VPN 49.12.82.225

OLD:

https://app.nuclino.com/Beru/Ber%C3%BA-knowledge-base/List-of-server-IPs-2022-25619b51-26c8-4d23-a95b-cbb78f8c6faa

3

Repository - Local Setup

Repository - local setup

 

  1. Create folders for repositories you will work on locally i.e. D:\Solutions\GoBasicV5
    NOTE It is important to create them in D drive
  2. Download TortoiseHg
  3. Download Charles Proxy
  4. Install Clear Cache extension 
  5. Login to Beru repositories (VPN disconnected)
  6. Copy URL of the repo you need to clone to your local machine
  7. Open Tortoise
  8. Click File > Settings > TortoiseHG
  9. Click Edit File button
  10. In the file paste and fill credentials (twice, at the beginning and the end of the document):
    [ui]

     

    username =

    password =

    ignore = ~/.hgignore

    [insecurehosts]

    repos.beru.dk = 1

    [extensions]

    rebase =

    [auth]

    repos.beru.dk.prefix = repos.beru.dk

    repos.beru.dk.username =

    repos.beru.dk.password =

  11. Click File > Clone Repository



  12. Paste in copied URL
  13. Select the destination folder
  14. Click Clone



  15. To pull incoming changes click the icon:



  16. If you need the latest version of a specific branch, right click > Update


 

NOTE:

To make sure what repository you should work with, right click on the customer’s page, select View page source and find a path where the repository name is displayed:





4

Retesting - Flow

Retesting - Flow

  1. Connect to Beru VPN
  2. Open Charles
  3. Open two browser windows separately:
    1. In one window open a client’s page
    2. In another window open a client’s page but with {pagename}.dk/?debug=TRUE 
  4. Check if the page is now displayed in Charles
  5. To add the page for debugging right-click and ENABLE SSL Proxying



  6. Refresh the page (if needed, clear cache again, and refresh the page) - proceed if the proper icon is displayed next to the page:



  7. Find a proper CSS file that needs to be replaced for testing purpose, usually it is under Themes, in other cases developer will share the information about the path



  8. Right-click the file and select Map local
  9. Choose local path to the file with a fix on staging and map it 
  10. Compare the page with a fix to production
  11. Make sure that fix did not break other functionalities/UI
5

Retesting - global changes

Retesting - global changes

Requirements

to be able to test global changes (changes in GoBasicv5 solution) in a separate solution:

  1. Make sure you have a proper folder structure, so you will be able to use grunt all command successfully:
    1. Create 1 main folder, in example Web Projects, as a parent folder 
    2. In the parent folder create GoBasic Solutions subfolder - here is where you clone solutions' repositories to
    3. Clone GoBasicV5 repository to the same parent folder
    4. Upload these files to the same parent folder (ask one of developers or QA to share the files with you):
      1. beru.rdg
      2. gruntfile.js
      3. package.json
      4. package-lock
  2. Check in Tortoise if you have a proper branch updated locally
  3. Install npm npm -i in the parent folder
  4. Install Ruby and Saas 
    npm i ruby 
    npm install grunt-contrib-sass --save-dev

Mapping global changes to the solution

  1. Open VSCode
    1. Open a repository of a solution where you will test global changes
    2. Go to Themes directory
    3. Right click Themes in a folder tree
    4. Select and click Open in Integrated Terminal
    5. Use command:
      grunt all

      The changes in GoBasicV5 repository are mapped to the solution repository now, you can start testing with a classic Charles proxy flow described above
  2. Open Charles proxy
  3. Open a solution URL in a debug mode
  4. Map a css file locally
  5. Run tests

 

Troubleshooting

Directory - permissions

If there is an issue with permissions to D: drive, create the folder structure under C:, for examle create Web Projects as a parent folder for the structure in C:\Documents folder

 

 

 

 

6

Monthly - Flow

Monthly - flow

  1. Turn on VPN 
  2. Find Monthly deployment ticket in Wrike
  3. There is a list of solutions that will be deployed - after a deploy developers mark solution in a checkbox
  4. Find the domain URL 
  5. Open it in a browser - the latest changes are first visible under admin: admin.{customersdomainurl}.dk
  6. Use the Wayback Machine where possible to be able to compare the site before and after a release 
  7. Run sanity check on web and mobile view - use Browserstack or if not possible test mobile view in a browser
  8. Focus on: buttons, links, lists with a dropdown, sorting, pagination, margins, sliders, accordions, but not only, these are sensitive areas
  9. If you find a regression - report immediately on Slack channel, and create a Subtask
  10. If you find a bug that is not a regression, report it (????? to confirm if as a subitem too)
7

Web and mobile testing

Web and mobile testing

Supported Browsers:

  • Chrome
  • Safari
  • Edge
  • FireFox

 

Mobile

Browserstack

  1. Credentials in 1Password
  2. To be able to test customers' pages:
    1. turn on Beru VPN locally
    2. turn on Local testing (Force Local needed in some cases) in Browserstack

8

Accessibility

Background

QualWeb is the tool used by Danish government for testing in the ministries - we also have to use it, but keep in mind that the results of these tests are often false-positive and more testing is needed.

Danish law follows the EN 301 549 standard, which only includes WCAG 2.1.
WCAG 2.2  will be implemented around 2025.
We decided to follow WCAG 2.2 but focusing on:
  • A + AA levels
  • Errors only - NOT warnings
 
The new requirements in WCAG 2.2 that we should follow, are:
This criteria is phased out in WCAG 2.2, and should no longer be met:
  • 4.1.1 Parsing (Obsolete and removed)
AAA is not in the Danish law yet, and this is not in our focus. 
 
All WCAG Understanding docs available here
 

Tools

  • Qual Web - testing on the external page

    Qual Web
  • AXE - browser extension

    AXE
  • Wave - browser extension

    Wave
  • Contrast Checker - visit the tool page, can be used as a Bookmark too. The Contrast Checker Bookmarklet will display a miniature version of WebAIM's popular Contrast Checker in any web page. By using the eyedropper tool in the color picker tools, you can readily check the contrast of any page content by selecting the foreground and background colors.

    Contrast Checker
    Contrast Checker as a Boomark

Documentation

WCAG 2.1

WCAG 2.2 - 'Understanding' docs

 

Testing Flow

1. Verify that the issue found in QualWeb is actually an Error and not just a Warning.

2. Verify if it's not a false-positive:

a. Read the rules on https://www.w3.org/TR/WCAG21/

b. Test with AXE Chrome plugin

c. Test with WAVE Chrome plugin

d. Run manual testing 

e. Checking contrast with https://webaim.org/resources/contrastchecker/ 

3. If you can't find the error anywhere else than QualWeb, it's probably a false-positive. If in doubts, contact Ask or Beata

 

____________________________________________________________________________________________

Accessibility Testing Guidelines

Purpose:
Accessibility testing ensures that the application is usable by individuals with disabilities, including those using assistive technologies such as screen readers, magnifiers, or voice commands.

Key Accessibility Principles

  1. Perceivable

    • Task: Ensure that all users can perceive the information presented.
    • How to Test:
      • Check if text alternatives (alt text) are available for images and non-text elements.
      • Verify if color contrast ratios between background and text meet accessibility standards.
    • Tools to Use:
      • WAVE (Web Accessibility Evaluation Tool): Highlights accessibility issues in real-time.
      • Contrast Checker: Test color contrast ratios.
  2. Operable

    • Task: Ensure that all users can navigate the application, especially using a keyboard or assistive devices.
    • How to Test:
      • Navigate the entire application using only a keyboard (Tab, Enter, Spacebar).
      • Test the functionality of all interactive elements without using a mouse.
    • Tools to Use:
      • VoiceOver (macOS/iOS), NVDA (Windows): Test the app with a screen reader to ensure it's fully operable via keyboard.
        NOTE - NVDA can affect local Java files on Windows and using Charles Proxy might be immposible after these changes
      • Tab Key Navigation: Check whether users can navigate through all interactive elements using the Tab key.
  3. Understandable

    • Task: Test whether users can understand and interact with the content effectively.
    • How to Test:
      • Ensure that instructions, labels, and forms are clear and descriptive.
      • Confirm that error messages are specific and help users correct their input.
    • Tools to Use:
      • Screen Reader Testing: Listen to how the app's content is read aloud and determine if it makes sense in audio-only mode.
  4. Robust

    • Task: Ensure compatibility with a variety of assistive technologies and older browsers or systems.
    • How to Test:
      • Test the app on older browsers and mobile operating systems.
      • Validate that the app works well with various assistive technologies, like screen readers and voice controls.
    • Tools to Use:
      • Browser DevTools: Check for HTML validation errors.
      • Axe Accessibility Plugin: Automated tests to flag common issues.

Specific Accessibility Tests

  1. Keyboard Navigation

    • Task: Check if the app is fully functional via keyboard-only input.
    • How to Test:
      • Use the Tab key to navigate and ensure focus states are visible.
      • Verify that dropdowns, modals, and interactive elements are keyboard accessible.
    • Tools to Use:
      • Keyboard Test (Manual): Perform common tasks using the keyboard only.
  2. Screen Reader Compatibility

    • Task: Ensure the app works seamlessly with screen readers.
    • How to Test:
      • Use screen readers like NVDA (Windows), JAWS, or VoiceOver (macOS/iOS) to navigate and interact with the app.
      • Ensure that interactive elements, headings, and buttons have proper labels and are announced correctly.
    • Tools to Use:
      • NVDA/VoiceOver/JAWS: Test for appropriate text-to-speech output and ARIA (Accessible Rich Internet Applications) labels.
  3. Color Contrast and Visual Design

    • Task: Ensure sufficient contrast between text and background for readability by users with visual impairments.
    • How to Test:
      • Use a contrast checker to verify that all text complies with the recommended contrast ratio of at least 4.5:1 for normal text.
    • Tools to Use:
      • Color Contrast Analyzer: Test the contrast of text and other elements.
      • Sim Daltonism (macOS): Simulate different types of color blindness to assess visual clarity.
  4. ARIA Landmarks and Roles

    • Task: Ensure that ARIA (Accessible Rich Internet Applications) roles and landmarks are correctly used for assistive technologies.
    • How to Test:
      • Check for the correct use of ARIA attributes (e.g., aria-label, aria-hidden) in HTML elements.
    • Tools to Use:
      • WAVE Toolbar: Review ARIA usage and general accessibility attributes.

General Accessibility Testing Tools

  • Axe Accessibility Plugin: Comprehensive tool for finding and fixing accessibility issues.
  • NVDA/VoiceOver: Screen reader testing.
  • WAVE: For evaluating accessibility directly in the browser.
  • Google Lighthouse: Automated accessibility testing with scoring and reports.

General Testing Tips

  • Document Every Issue: Record screenshots or videos for any UX/UI or accessibility issues you encounter, including steps to reproduce and device/browser configurations.
  • Test Across Devices: Ensure thorough testing on multiple devices, operating systems, and browsers.
  • Collaborate with Developers: Share feedback in a detailed and actionable format, prioritizing issues that severely impact usability and accessibility.

By following these guidelines, testers will ensure that the application is not only user-friendly but also accessible to everyone, meeting both UX/UI and accessibility standards.


This documentation is subject to updates based on evolving UX/UI trends and accessibility standards. Be sure to regularly check for new guidelines.

 
 
9

Bug ticket - Standard

Bug ticket - to discuss

  1. Topic
  2. Description
  3. STR - Steps To Reproduce
  4. AC - Acceptance Criteria 
  5. For QA: Attach screenshots, recordings and other data needed to investigate/ fix: environment, URL, device, OS, version, timestamp
  6. For PM, PO, developers: Attach requirements, designs