Code Monkey home page Code Monkey logo

automation-best-practices-java's Introduction

testing-good

E2E Tests – Examples E2E Tests – Solutions

Testing for Good

#testing4good

🌎 Testing for Good enables great test automation engineering while shaping a more equitable society. πŸ‘©β€πŸ’»

Today, we're asking for donations for Environmental Working Group

We're advocates who won't quit. We're scientists that find solutions. We're people trying to make the safest choices for our health. At the Environmental Working Group, we believe that you should have easy access to the information you need to make smart, healthy choices. It’s this belief that inspired our president and co-founder, Ken Cook, to create EWG.

Since 1993, we've worked tirelessly to protect public health. Whether it's spotlighting harmful industry standards, speaking out against outdated government legislation or empowering consumers with breakthrough education and research, we're in this fight.

And we're not going anywhere.

πŸ‘‰ While the event is free, Sauce Labs encourages all attendees to

πŸ‘‰ donate

Anything helps!

100% of donations go to support the cause

You will learn:

In this automation best practices workshop you will learn the latest and greatest tools and techniques to drastically improve your testing!

We will focus on a holistic approach of risk mitigation by doing:

  • Functional web testing
    • Create a framework for doing comprehensive web testing
    • Use industry-standard best practices
    • Create functional browser tests using Selenium
  • Many other things in between
    • Accessibility testing
    • Run in massive parallel (100s of tests in < 5 min)
    • Automatically get robust test reports which includes logs + videos

Technologies you will use:

Java Selenium Maven Sauce Labs GitHub Actions

Table Of Contents

Requirements

This is NOT a beginners course. You will not learn Java testing fundamentals here. However, you will learn a number of amazing skills, techniques, and tools to help you test web applications

  • At least 1 year of Java programming
  • Deep understanding of Selenium WebDriver
  • Deep understanding of OOP
  • Java 8 installed
  • Java IDE installed
  • Git
  • Maven installed
  • Free Sauce account

Team

Your Instructor: Chris Eccleston

Chris Eccleston profile photo

Facts about me:

  • 🏒 Solution Architect at Sauce Labs
  • πŸ˜„ Pronouns: he/him
  • 🏠 Home automation enthusiast

LinkedIn Twitter Github

Your TA: James Tacker

James Tacker profile photo

Facts about James:

  • 🏒 DevOps Engineer at Sauce Labs
  • πŸ˜„ Pronouns: he/him
  • πŸ€ Loves basketball

Setup

Sign up for account

Sauce Labs

Get your username and api key

Gitpod setup

Open in Gitpod

you can also install the Gitpod browser extension (Chrome or Firefox) for use with future projects.

ℹ️ Gitpod lets you run an entire Dev environment from a browser! You can use this approach if you don't know how to set up a local Java environment.

  1. Once the Gitpod.io URL is loaded, you will need to sign in with the GitHub account you created earlier
  2. Once the development environment is loaded, you should see 'Ready to test!' in the Terminal window in the lower portion of the window, run the following commands in that Terminal to set your SAUCE_USERNAME and SAUCE_ACCESS_KEY:

Gitpod screenshot

ℹ️ You can get your Sauce Labs Username and Access Key by going to the Sauce Labs user settings page

eval $(gp env -e SAUCE_USERNAME=<sauce_username>)
eval $(gp env -e SAUCE_ACCESS_KEY=<sauce_access_key>)

Replace <sauce_username> and <sauce_access_key> with your credentials

Once you have run those 2 commands, you can run the following commands to test your environment variables:

echo $SAUCE_USERNAME
echo $SAUCE_ACCESS_KEY

Run sanity tests

mvn test -Dtest=E2ETests -X

Gitpod screenshot

Setting data center

By default, the data center selected for our exercises is US_WEST. If you would like to switch to another data center (i.e. EU_CENTRAL), please update the E2ETests with the appropriate data center.

βœ… πŸ‘ Environment setup is complete if 1 test passed & 3 tests were skipped

Stay to the end and win a prize!

Stay to the end and 2 lucky people can win a snazzy Backpack!

me

Let's get started!

Let start by taking a look at our testing strategy and do a few exercises ➑️

Key

πŸ’‘ this is a tip

πŸ‹οΈβ€ this is an exercise for you to do

❓ this is a question for us to think and talk about. Try not to scroll beyond this question before we discuss

automation-best-practices-java's People

Contributors

c3ccl3ston avatar nadvolod avatar eyaly avatar tacktician avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.