Standalone applications testing and automation

Similar documents
openqa Helping SUSE Linux Enterprise with Automated Testing Richard Brown openqa Technical Lead

openqa Avoiding Disasters of Biblical Proportions Marita Werner QA Project Manager

SALOME Maintenance Procedure. Frédéric Pons (Open Cascade) Roman Nikolaev (Open Cascade)

Beyond make and make check

Frysk 1, Kernel 0? Andrew Cagney Red Hat Canada, Inc. Abstract. 1 Overview. 2 The Frysk Project

Test Automation Strategies in Continuous Delivery. Nandan Shinde Test Automation Architect (Tech CoE) Cognizant Technology Solutions

BEHAVIOR DRIVEN DEVELOPMENT BDD GUIDE TO AGILE PRACTICES. Director, Strategic Solutions

Efficient Test Automation on an Agile Project

Caliber 11.0 for Visual Studio Team Systems

Agile Test Automation ICAgile

#jenkinsconf. Managing jenkins with multiple components project. Jenkins User Conference Israel. Presenter Name Ohad Basan

What's new in GStreamer

PTN-202: Advanced Python Programming Course Description. Course Outline

Zoneminder Debian Installation Manual New. Releases >>>CLICK HERE<<<

openqa Avoiding Disasters of Biblical Proportions Marita Werner QA Project Manager

DBaaS (Oracle and Open Source)

Roles. Ecosystem Flow of Information between Roles Accountability

Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Building Scaleable Cloud Infrastructure using the Red Hat OpenStack Platform

June 8th, 2017 Washington D.C. Security Compliance for modern infrastructures with OpenSCAP

Test Automation as a Service (TaaaS)

5 days lecture course and hands-on lab $3,295 USD 33 Digital Version

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA

Managing BDD. Test Case Management for BDD Automation

Сравнительный анализ инструментов Автоматизации Desktop AUT. Anton Semenchenko

RED HAT ENTERPRISE LINUX 7 BETA

ArcGIS for Developers: An Introduction. Moey Min Ken

Behavior Driven Development (BDD) By Nabeel Ibrahim

Intro to ovirt. Itamar Heim Virtualization Management the ovirt way

Maja Schreiner. 9th Lean, Agile & Scrum Conference 2017

Real World CI with Red Hat Cloud Suite. Sim Zacks - Principal Quality Engineer Oded Ramraz - Manager QE Ops TLV

AD105 Introduction to Application Development for the IBM Workplace Managed Client

csc444h:& so(ware&engineering&i&

Firefox quality. Mozilla Paris FOSDEM Feb 3rd 2018

Red Hat Summit 2009 Rik van Riel

Flatpak and your distribution. Simon McVittie

DPDK on Arm64 Status Review & Plan

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Gerrit

PERSPECTIVE. Best Practices in Automation Testing of Mobile Applications. Abstract

VIEW POINT. Choosing the right automation tool and framework is critical to project success. Harsh Bajaj, Technical Test Lead ECSIVS, Infosys

GL-280: Red Hat Linux 7 Update. Course Description. Course Outline

PERSPECTIVE. End-to-end test automation A behaviordriven and tool-agnostic approach. Abstract

Hands-On Lab. Authoring and Running Automated GUI Tests using Microsoft Test Manager 2012 and froglogic Squish. Lab version: 1.0.5

Selenium Workshop. Removing the Mystery from Open Source Test Automation. Presented By Chris Petrov, PMP Leverage Point Corporation

How to make your application into a Flatpak

GNOME 3.0 Accessibility: State of the Union. Alejandro Piñeiro

I keep hearing about DevOps What is it?

Flatpak workshop. flatpak.org

Developing an HTML5 Extension for SAP Visual Intelligence (Lumira) Author: Kirubhananth Chellam

DevNet Workshop-Hands-on with CloudCenter and Jenkins

Introduction to SharePoint 2016 for Collaboration and Document Management

Deploying Windows Devices and Enterprise Apps

Rate Plan Analysis Reports in Premier

CIS192 Python Programming

believe in more SDN for Datacenter A Simple Approach

ONAP Developer Typical Setup 2017 July ONAP Virtual Developers Event

Dictionary Driven Exchange Content Assembly Blueprints

ATTACHMENT MANAGEMENT USING AZURE BLOB STORAGE

OpenPrinting Plenary. 15 May 2017 Joint PWG/OpenPrinting Summit F2F Wild Palms Hotel in Sunnyvale, CA

Adam Carmi Applitools

Full file at Chapter 2: Exploring the Desktop

Widget. Widget is a generic name for parts of an interface that have their own behaviour. e.g., buttons, progress bars, sliders, drop-down

Medsphere.org: Released. VCM - June 2009

Intermediate Python 3.x

lecture'7:' quality'assurance'

Taming your heterogeneous cloud with Red Hat OpenShift Container Platform.

How We Learned To Love Test Automation for Localization AUTOMATED TESTS

System Requirements for Online Testing

SeeTest Quality Assurance Platform On-premise Digital Assurance Lab

Organising benchmarking LLVM-based compiler: Arm experience

PYTHON: BUILDING GEOPROCESSING TOOLS. David Wynne, Geri Miller

Widget Toolkits CS MVC

Telerik Test Studio. Web/Desktop Testing. Software Quality Assurance Telerik Software Academy

Libvirt presentation and perspectives. Daniel Veillard

IT User Experience Governance Committee

Test.Forge.mil. Overview

Deploying Windows Devices and Enterprise Apps

Docker Universal Control Plane Deploy and Manage On-Premises, Your Dockerized Distributed Applications

At a high level, the current OPNFV CI pipeline can be summarized as follows:

How GNOME Obsoleted its Enable Accessibility Setting. Alejandro Piñeiro

Testing at Cloud Speed. Matt Tesauro, SANS AppSec 2013 Austin, TX, April 2013

SOFTWARE QUALITY ASSURANCE TOOLS & TECHNOLOGY PROFESSIONAL SERVICES ACADEMY. Technical Note. License Usage. Issue 2.0

Red Hat CloudForms 4.5 Integration with AWS CloudFormation and OpenStack Heat

Red Hat Enterprise Virtualization and KVM Roadmap. Scott M. Herold Product Management - Red Hat Virtualization Technologies

MIT Kerberos & Red Hat

System Requirements for Online Testing

Guide to Test Automation Tools

UI, Graphics & EFL. Carsten Haitzler Principal Engineer Samsung Electronics Korea Founder/Leader Enlightenment / EFL

What s New in Red Hat OpenShift Container Platform 3.4. Torben Jäger Red Hat Solution Architect

Automated JAVA GUI Testing. Challenges and Experiences

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

Products and editions covered

Shift Left, Automation, and Other Smart Strategies for Getting Ahead in QA

Class 1 Introduction to Selenium, Software Test Life Cycle.

ITIL isn t evil Most people who implement it are

TIBCO Business Studio - Analyst Edition Installation

DCqaf Implementation for a Fashion Retailer ATTENTION. ALWAYS.

Technology Background Development environment, Skeleton and Libraries

How Can Testing Teams Play a Key Role in DevOps Adoption?

NSO in Brownfield: Fully Automated One-Click Reconciliation

Transcription:

Standalone applications testing and automation Desktop QA team Red Hat, Inc. 2014-02-02

Who we are Red Hat's Desktop QE team Quality assurance for: Desktop hardware Wireless, graphics, audio... Desktop application stack Desktop environments GUI management tools Office applications 2 FOSDEM 2014

Distributions under test RHEL7.0 Desktop RHEL 5-6 updates Fedora Rawhide/RHEL next Latest versions testing: NetworkManager Evolution 3 FOSDEM 2014

Distributions under test RHEL7.0 Desktop RHEL 5-6 updates Fedora Rawhide/RHEL next Latest versions testing: NetworkManager Evolution 4 FOSDEM 2014

Distributions under test RHEL7.0 Desktop RHEL 5-6 updates Fedora Rawhide/RHEL next Latest versions testing: NetworkManager Evolution 5 FOSDEM 2014

Distributions under test RHEL7.0 Desktop RHEL 5-6 updates Fedora Rawhide/RHEL next Latest versions testing: NetworkManager Evolution 6 FOSDEM 2014

Infrastructure bits Beaker manages available machines and distributions Simple Test Harness task fetches test automation code and runs required tests Behave controls automation execution Dogtail/pexpect executes actions on UI/CLI Code review in Gerrit Test case management - Nitrate 7 FOSDEM 2014

Infrastructure bits Beaker manages available machines from the pool and distributions Simple Test Harness task fetches test automation code and runs required tests Behave controls automation execution Dogtail/pexpect executes actions on UI/CLI Code review in Gerrit Test case management - Nitrate 8 FOSDEM 2014

Infrastructure bits Beaker manages available machines from the pool and distributions Simple Test Harness task fetches test automation code and runs required tests Behave controls automation execution Dogtail/pexpect executes actions on UI/CLI Code review in Gerrit Test case management - Nitrate 9 FOSDEM 2014

Infrastructure bits Beaker manages available machines from the pool and distributions Simple Test Harness task fetches test automation code and runs required tests Behave controls automation execution Dogtail/pexpect executes actions on UI/CLI Code review in Gerrit Test case management - Nitrate 10 FOSDEM 2014

Infrastructure bits Beaker manages available machines from the pool and distributions Simple Test Harness task fetches test automation code and runs required tests Behave controls automation execution Dogtail/pexpect executes actions on UI/CLI Code review in Gerrit Test case management - Nitrate 11 FOSDEM 2014

Beaker http://beaker-project.org Automation and task execution system for labs of test computers VM / bare-metal machines support Multiarchitecure support Flexible permissions system 12 FOSDEM 2014

Beaker Most notable tasks used: /desktop/rhel7/install Installs the desktop components (GNOME/KDE) /desktop/simpletestharness fetches automation code from git/gzip sources starts specified tests to be executed stores test output, reports and artifacts 13 FOSDEM 2014

Beaker Most notable tasks used: /desktop/rhel7/install Installs the desktop components (GNOME/KDE) /desktop/simpletestharness fetches automation code from git/gzip sources starts specified tests to be executed stores test output, reports and artifacts 14 FOSDEM 2014

Dogtail Python GUI automation framework taking advantage of Accessibility technologies Based on AT-SPI toolkit-neutral technology, used by GTK, Qt, Mozilla, LibreOffice 15 FOSDEM 2014

Dogtail Dogtail-based upstream test suites PiTiVi GNOME Software Evince 16 FOSDEM 2014

Sniff Sniff is a GUI for AT-SPI structure 17 FOSDEM 2014

Scripts and unittests Scripts -> Unittests -> BDD BDD Behaviour Driven Development 18 FOSDEM 2014

Gherkin Gherkin Business Readable Domain Specific Language Test scenarios are human-readable list of steps to be performed Steps are matched to python procedures, called step definitions 19 FOSDEM 2014

Gherkin Core keywords: Feature, Background, Scenario Scenarios can be grouped by feature or using tags 20 FOSDEM 2014

Behave https://pypi.python.org/pypi/behave Python implementation of BDD approach Flexible output formatters (HTML, plain etc.) Setup / breakdown is implemented via before_* / after_* procedures 21 FOSDEM 2014

Behave 22 FOSDEM 2014

Tips and Tricks HTML report with screenshots after each step and logs from journalctl Screencast recording Detect app crashes via abrt 23 FOSDEM 2014

Benefits of BDD approach Automated test scenarios are human-readable Can be used as a instructions for manual tests Easy to update / enhance Scenarios can be written by designers draft new features document app behaviour Steps can be reused across several projects: Gnome Online Accounts handling Working with GNOME open / save file dialogs 24 FOSDEM 2014

Benefits of BDD approach Automated test scenarios are human-readable Can be used as a instructions for manual tests Easy to update / enhance Scenarios can be written by designers draft new features document app behaviour Steps can be reused across several projects: Gnome Online Accounts handling Working with GNOME open / save file dialogs 25 FOSDEM 2014

Benefits of BDD approach Automated test scenarios are human-readable Can be used as a instructions for manual tests Easy to update / enhance Scenarios can be written by designers draft new features document app behaviour Steps can be reused across several projects: Gnome Online Accounts handling Working with GNOME open / save file dialogs 26 FOSDEM 2014

Benefits of BDD approach UI abstraction in scenarios: Same scenarios can be used to test various frontends: e.g. NetworkManager's nmcli / nmtui Evolution tests with minimal adjustments can be used for RHEL 6, RHEL 7, Fedora 20 and Fedora Rawhide Due to grouping scenarios by feature we can easily run regression check for affected feature 27 FOSDEM 2014

Benefits of BDD approach UI abstraction in scenarios: Same scenarios can be used to test various frontends: e.g. NetworkManager's nmcli / nmtui Evolution tests with minimal adjustments can be used for RHEL 6, RHEL 7, Fedora 20 and Fedora Rawhide Due to grouping scenarios by feature we can easily run regression check for affected feature 28 FOSDEM 2014

Success stories: NM, Evolution Evolution testing across available distributions Proposed patch testing Network Manager Uses pexpect instead of dogtail Scenarios can be re-used to test various NM frontends: nmcli, nmtui (ncurses-based) Sharing steps with GNOME Control Center 29 FOSDEM 2014

Success stories: NM, Evolution Evolution testing across available distributions Proposed patch testing Network Manager Uses pexpect instead of dogtail Scenarios can be re-used to test various NM frontends: nmcli, nmtui (ncurses-based) Sharing steps with GNOME Control Center 30 FOSDEM 2014

Future plans Working with Fedora QA to have a similar process for Fedora Execute tests directly in upstream CI: GNOME-continuous Build.kde.org 31 FOSDEM 2014

Future plans Working with Fedora QA to have a similar process for Fedora Execute tests directly in upstream CI: GNOME-continuous Build.kde.org 32 FOSDEM 2014

Questions 2014-02-02 33