TestCafe-TAU icon indicating copy to clipboard operation
TestCafe-TAU copied to clipboard

This repo contains the course material for the Test Automation University Course Introduction to E2E Web Testing using TestCafe

TestCafe-TAU (Test Automation University) Course :rocket:

Tested with TestCafe

This repo contains the course material for the Test Automation University Course Introduction to E2E Web Testing using TestCafe

Pre-requisites

In order to follow this course, you will need

How to use this repository

The course is divided into the 9 different chapters and each chapter has an associated branch. The master branch without any UI tests.

  • Chapter 3 Branch -- Getting Started with TestCafe
  • Chapter 4 Branch -- Deep Dive with TestCafe
  • Chapter 7 Branch -- Page Object Model with TestCafe
  • Chapter 8 Branch -- Data-Driven Tests with TestCafe
  • Chapter 9 Branch -- BDD Tests with TestCafe and CucumberJS
  • Chapter 10 Branch -- Reporting with TestCafe
  • Chapter 11 Branch -- TestCafe Visual Validation with Applitools Ultra Grid
  • Chapter 12 Branch -- Integrate TestCafe with GitHub Actions
  • Chapter 14 Branch -- Use TestCafe Docker Image

You need to checkout the branch depending on the chapter you are on.

Note:

In each branch you need to run npm install to add node_modules into the project and also you need to install the required npm module based on the branch

Resources

TestCafe Cheat Sheet

  • https://byrne-greg.github.io/testcafe-cheat-sheet/

How TestCafe Works

  • https://devexpress.github.io/testcafe/documentation/how-it-works/

Install TestCafe

  • https://devexpress.github.io/testcafe/
  • https://marketplace.visualstudio.com/search?term=testcafe&target=VSCode&category=All%20categories&sortBy=Relevance

TestCafe Basics

  • https://devexpress.github.io/testcafe/documentation/guides/basic-guides/organize-tests.html#tests
  • https://devexpress.github.io/testcafe/documentation/guides/basic-guides/organize-tests.html#fixtures
  • https://devexpress.github.io/testcafe/documentation/getting-started/#creating-a-test

Explore TestCafe features

  • https://devexpress.github.io/testcafe/documentation/guides/basic-guides/organize-tests.html#specify-the-start-webpage

  • https://devexpress.github.io/testcafe/documentation/guides/basic-guides/organize-tests.html#specify-test-metadata

  • https://devexpress.github.io/testcafe/documentation/guides/basic-guides/interact-with-the-page.html

  • https://devexpress.github.io/testcafe/documentation/reference/test-api/testcontroller/

  • https://devexpress.github.io/testcafe/documentation/reference/test-api/fixture/beforeeach.html

  • https://devexpress.github.io/testcafe/documentation/reference/test-api/fixture/aftereach.html

  • https://devexpress.github.io/testcafe/documentation/guides/basic-guides/obtain-client-side-info.html#check-a-page-url

  • https://devexpress.github.io/testcafe/documentation/guides/basic-guides/organize-tests.html#skip-tests

  • https://devexpress.github.io/testcafe/documentation/guides/basic-guides/assert.html

  • https://devexpress.github.io/testcafe/documentation/guides/basic-guides/run-tests.html

  • https://developers.google.com/web/tools/chrome-devtools/device-mode/

TestCafe Wait Mechansim

  • https://devexpress.github.io/testcafe/documentation/guides/concepts/built-in-wait-mechanisms.html

TestCafe Screenshots and Videos

  • https://devexpress.github.io/testcafe/documentation/guides/advanced-guides/screenshots-and-videos.html

TestCafe Page Model

  • https://devexpress.github.io/testcafe/documentation/guides/concepts/page-model.html

  • https://devexpress.github.io/testcafe/documentation/reference/configuration-file.html

TestCafe with Data Driven

  • https://devexpress.github.io/testcafe/documentation/recipes/best-practices/create-data-driven-tests.html

TestCafe with Cucumber and BDD

  • https://cucumber.io/docs/guides/10-minute-tutorial/

  • https://marketplace.visualstudio.com/items?itemName=alexkrechik.cucumberautocomplete

  • https://github.com/gkushang/cucumber-html-reporter

  • https://github.com/rquellh/testcafe-cucumber

TestCafe Reporter

  • https://devexpress.github.io/testcafe/documentation/guides/concepts/reporters.html#search-for-reporter-plugins
  • https://www.npmjs.com/package/testcafe-reporter-html

Allure Report

  • https://github.com/isaaceindhoven/testcafe-reporter-allure

TestCafe with Applitools Ultrafast Grid

  • https://applitools.com/docs/topics/overview/using-the-ultrafast-grid.html
  • https://applitools.com/docs/topics/overview/overview-writing-tests-with-vg.html
  • https://applitools.com/tutorials/testcafe.html
  • https://github.com/applitools/eyes-testcafe

Add Project to GitHub Adding an existing project to GitHub using the command line

  • https://help.github.com/en/github/importing-your-projects-to-github/- adding-an-existing-project-to-github-using-the-command-line

TestCafe with GitHub Actions

  • https://help.github.com/en/actions
  • https://help.github.com/en/actions/configuring-and-managing-workflows/configuring-a-workflow
  • https://github.com/marketplace/actions/run-testcafe
  • https://devexpress.github.io/testcafe/documentation/reference/command-line-interface.html
  • https://github.com/moatazeldebsy/TestCafe-Github-Action/blob/master/.github/workflows/nodejs.yml

TestCafe with Docker

  • https://devexpress.github.io/testcafe/documentation/guides/advanced-guides/use-testcafe-docker-image.html
  • https://docs.docker.com/
  • https://docs.docker.com/docker-for-mac/install/
  • https://docker-curriculum.com/

Run TestCafe on Remote Device

  • https://devexpress.github.io/testcafe/documentation/recipes/basics/test-on-remote-computers-and-mobile-devices.html

TestCafe with Report Portal

  • https://reportportal.io/docs
  • https://github.com/redfox256/testcafe-reporter-reportportal