Webinar: Il “real device testing” di Perfecto Mobile per una strategia mobile di successo

49
Emerasoft srl Mission Vision Market & Solutions Maria Chiara Ambrosio Mauro Della Toffola

Transcript of Webinar: Il “real device testing” di Perfecto Mobile per una strategia mobile di successo

•Emerasoft srl•Mission•Vision•Market & Solutions

Maria Chiara AmbrosioMauro Della Toffola

Agenda

• Il mobile testing• La soluzione Perfecto Mobile• Solution demo• Q&A

Webinar: Il “Real Device Testing” di Perfecto Mobile per una strategia mobile di successo.

SETTEMBRE 2015

Chi siamo

Data di nascita: 2005

Dove siamo:

via Po, 1 – Torino via del Poggio Laurentino, 118 - Roma

Creare valore per i nostri clienti implementando soluzioni

che aumentano la produttività, facilitando la collaborazione.

La nostra mission:

DevOpsIoT

System & Software Engineering

Testing

ALM

SOAProcess Intelligence

Business Intelligence

Security

Digital Publishing

Training

ALM+PLMtraceability

standard compliance

collaboration

Big Data

BYOD

User Experience

QualityEnterprise Mobility

agileIoD

IoH

Usability

APIBPM

Continuous Delivery Continuous Integration

DevOpsIoT

System & Software Engineering

Testing

ALM

SOAProcess Intelligence

Business Intelligence

Security

Digital Publishing

Training

ALM+PLMtraceability

standard compliance

collaboration

Big Data

BYOD

User Experience

QualityEnterprise Mobility

agileIoD

IoH

Usability

APIBPM

Continuous Delivery Continuous Integration

STRUMENTI E SERVIZI

DI SOFTWARE TESTING

Test Automation web e mobile

Test Execution:• Excel Integration• Test Report KPI e SLA

Test di carico e di performance:• Web• Mobile• Virtual environments (CITRIX; Oracle Forms)

• Gestione requisiti

• Configuration Management con Subversion e Git

• Continuous Integration e deploy con Jenkins

• DEVOPS

Problem ?

Problem solv ing

ORGANIZZATIVI

TTMBUSINESS

TECNOLOGIA

rapida configurabilità

dopanti

moderni

collaborativi

ORGANIZZATIVI

TTMBUSINESS

TECNOLOGIA

ORGANIZZATIVI

TTMBUSINESS

TECNOLOGIA

Ambiti orizzontaliAm

biti

verti

cali

Ambiti orizzontaliAm

biti

verti

cali

Requirement, Test, Task, Defect, Planning, Release, Compliancy

AutomationModel CIDelivery PerformanceConfig

Introduzione al testing

Cos'è e cosa serve

Vi sono due distinzioni fondamentali in ambito Testing

Functional Testing

ovvero quei test che verificano e validano il comportamento di un software, quindi “cosa fa” un sistema

Non - Functional Testingovvero quei test che verificano “come” funziona il sistema, e quindi test di stress, carico, affidabilità, manutenibilità, usabilità  e portabilità

Cos'è e cosa serve

Il Testing o Software Testing fa parte delle assicurazioni di qualità, ma non è l’unica

Debugging (lato sviluppo)ProfilingBenchmarking

Sono altre assicurazioni di qualità che fanno parte dell’accezione comune di Software Testing

parleremo oggi di tutti gli aspetti legati alle assicurazioni di qualità

Il collaudo, o software testing

Il termine Software Testing,

è in informatica, il collaudo del softwareIl quale è un procedimento, che fa parte del ciclo di vita del software, utilizzato per individuare le carenze di correttezza, completezza e affidabilità delle componenti software in corso di sviluppo.

Consiste nell'eseguire il software da collaudare, da solo o in combinazione ad altro software di servizio, e nel valutare se il comportamento del software rispetta i requisiti.

Cos'è e cosa serve

Cos'è e cosa serve

In generale, occorre distinguere i "malfunzionamenti" del software

"failure"

dai "difetti” del software

"fault" o "defect" o "bug”

Cos'è e cosa serve

Il malfunzionamento o "failure” è un comportamento del softwaredifforme dai requisiti espliciti o impliciti.

Il failure

Si verifica quando, in assenza di malfunzionamenti della piattaforma, (hardware + software), il sistema non fa quello che ci si aspetta

Per esempio un link non corretto, una funzionalità assentema necessaria o tracciata in modo implicito o esplicito neirequisiti del software

Cos'è e cosa serve

Il difetto o bug oppure defect, è una sequenza di istruzioni, sorgenti eseguibili, che quando eseguita con particolari dati in input, genera un malfunzionamento.

Il Bug o Defect

In pratica, si ha un defect, solo quando viene eseguita una specificaprocedura che contiene il difetto e solo se i dati di input sono tali daevidenziare l’errore

Per esempio: un form in una web application che accetta qualsiasi parametro in input, come ?!”£$ etc, come per il campo “nome utente” o “email”

Cos'è e cosa serve

Lo scopo del collaudo è di rilevare i defects tramite i malfunzionamenti,al fine di minimizzare le probabilità che il software rilasciato

abbia dei malfunzionamenti nella normale operatività.

Nessun collaudo può ridurre a zero tale probabilità, in quanto le possibili combinazioni di valori di input validi sono enormi, e non possono essere riprodotte in un tempo ragionevole.

Tuttavia un buon collaudo può rendere la probabilità di malfunzionamenti abbastanza

bassa da essere accettabile dall'utente.

Cos'è e cosa serve

L'accettabilità di una data probabilità di malfunzionamento dipende dal tipo di applicazione.

Il software per cui è richiesta la massima qualità, è quello cosiddetto "life-critical", cioè in cui un malfunzionamento può mettere a rischio la vita umana, come quello per apparecchiature medicali o aeronautiche. Per tale software è accettabile solo una probabilità di malfunzionamento molto bassa, e pertanto il collaudo è molto approfondito e rigoroso.

Per rilevare il maggior numero possibile di difetti, nel collaudo si sollecita il software in modo che sia eseguita la maggior quantità possibile di codice con

svariati dati di input.

Il Functional testing

Il Functional testing

Il functional testing o test funzionale è un’attività che fa parte delle procedure di qualità

Si riferisce alle attività che verificano un’azione specifica o una funzione nell’applicazione.

Le azioni e le funzioni da testare sono generalmente derivabili in modo diretto dai requisiti software.

Ok, ma… cos’è un requisito?

In ingegneria, un requisito è una singolare e documentata necessità fisica e funzionale che un particolare prodotto o servizio deve possedere.

E‘ comunemente usato nel senso formale nell’ingegneria dei sistemi, del software engineering, o ingegneria aziendale.

Si tratta di un'istruzione che identifica un attributo necessario, capacità, caratteristiche, o la qualità di un sistema per produrre un valore.

Il Functional testing

Il Functional testing

Saturn VPer vincere la gravità terrestre, un vettore deve raggiungere quella che viene chiamata la “velocità di fuga”.

Questa velocità equivale a 11,2 km/sec.

Per esempio…

Il Functional testing

Il Requirement Based Testing Si introduce durante la prima fase dello sviluppo software, dove la correzione degli errori ha un costo

inferiore; Si introduce nella fase della raccolta dei requisiti, dove la maggior parte dei difetti hanno effettivamente

luogo; Risponde in modo effettivo alla crescita della qualità dei requisiti: i requisiti inadeguati sono spesso la

ragione del fallimento del progetto; Permette ai casi di test di evolvere, seguendo la volatilità dei requisiti stessi ed adeguandosi di conseguenza.

Un approccio comunemente utilizzato per la creazione dei casi di test funzionaliè proprio quello di derivare questi test direttamente dai Requisiti

Questo processo prende il nome di Requirement Based Testing (RBT)

Requisiti; 56%Design; 27%

Altro; 10%

Codice; 7%

Distribuzione dei bug

Il Functional testing

Requisiti; 82%

Design; 13%Altro; 4% Codice; 1%

Distribuzione dell'effort per correggere i bug

Il Functional testing

Il Functional testing

La scrittura e la definizione dei casi di test è fondamentale

È sempre necessario avere una quantità ragionevole di casi di test

Assicurandosi che questi test siano davvero efficaci per verificare le funzionalità, quindi i requisiti

Funzionalità (requisito)

Test

Test Tes

t

Il Functional testing

Una corretta strategia è quindi di integrare la definizione dei

test durante il ciclo di vita e di sviluppo del progetto stesso, avendo

sempre in mente le specifiche ed i requisiti.

Perfecto Mobile CQ

Better Apps Faster, No Compromising

THE LEADER IN MOBILE APP QUALITYPERFECTO MOBILE AT A GLANCE

SETTING THE BAR FOR MARKET SUCCESS

DOMINANT LEADER & VISIONARY

INDUSTRY STANDOUT AND RISING STAR

Perfecto helps companies implement continuous quality by accelerating app release velocity without compromising quality.

“Perfecto Mobile currently has the the strongest 3rd party position in the market” – Thomas Murphy

Frost and Sullivan Customer Value

Leadership Award – Mobile Application

Testing, Global, 2013

The Speed of Mobile

Business Transformation

Insatiable user demand

Pace ofInnovation

BYOD and Mobile Apps

are the #1 and #2 most

important trends for

enterprises 2013 and 2014

Gartner

Users Expectations are High

… And ready to try the next best thing

Engagement follows Flawless and Immediate Execution

THE KEY METRICSDownloads | Active Users | Retention

Mobile Innovators are Transforming Enterprises

Driving Customer Engagement

Strengthening Brand

Beat competition through innovation

53% of Business leaders expect mobile technologies and apps

will drive business innovation over the

next three years.

Source: Harvard Business Review

What Challenges Are MBNA Experiencing?

Unit

Smoke

Regression

UAT Load

Security

Out of cycle Testing

• Coverage• Environment• Feedback

Manual Test

Slow Feedback

Velocity and Release Frequency Challenges

Quality Coverage - end user flows, devices, OS

Stability and consistency of test env. between cycles

Collaboration across teams / locations

Fast FeedbackVelocity

AVERAGE RATING

Key to Speed: Automating the Process & Testing

Service Virtualization

Automation that Works

Component Library | Parallel Execution |App & System Level Control

“Always Ready” Lab

Device-as-a-Service |Real Devices | Carrier Connected | Globally Distributed

Non-Functional Test• Real world condition testing• Performance testing• Production readiness

Continuous Integration

Build Sanity

Achieving Continuous Quality Requires a Modern Lab

1. Real end user conditions2. Enterprise grade SLA

(Consistent, Stable, Secure)3. Open and Integrated4. Global and collaborative5. Hybrid Cloud deployment model 6. Elastic

44

Enterprise Grade• Secure• Available• Consistent• Device SLA

Global & Collaborative• Remote access• 12 Global Data Centers• Share devices with offshore

Teams

Hybrid• Devices on prem and In The

Cloud

Real End User Conditions • Real Devices • Real Networks• “Wind Tunnel” - Real World

Device and App Conditions

Open and Integrated• MobileCloud API• Selenium• Eclipse• Jenkins• …

Elastic • 100s of Devices On-Demand

When Needed

The Continuous Quality Lab

Continuous Quality Lab – Key Capabilities

The Right Services

Manual Test Test Automation

PerformanceApp Monitoring

Recap – Mobile is Driving

Business innovation Faster Release Frequency Continuous Quality Imperative

Perfecto Mobile CQ

Software Demo

Contenuti disponibili su:

Canale slideshare di Emerasoft

Canale Youtube Emerasoftwww.emerasoft.comwww.emerasoft.com/servizi/qcloud

Q&A?

What’s next

Segui i nostri canali …

[email protected]

Emerasoft Srl

via Po, 1 – 10124 Torinovia del Poggio Laurentino, 118 – 00144 Roma

T +39 011 0120370 T +39 06 87811323F +39 011 3710371 

Grazie…

Contatti