• No results found

Software Testing in the Cloud. Tauhida Parveen, PhD

N/A
N/A
Protected

Academic year: 2021

Share "Software Testing in the Cloud. Tauhida Parveen, PhD"

Copied!
40
0
0

Loading.... (view fulltext now)

Full text

(1)

Software Testing in the Cloud

Tauhida Parveen, PhD

[email protected]

(2)

About Me

• University Department Chair, Software

Engineering, Keiser University

• PhD, CS, Florida Institute of Technology

• MBA, University of Central Florida

• ISTQB Certified Tester

(Foundation, Manager, Agile)

• Independent consultant and trainer

• Software Quality Engineer/ Tester

(3)

About Me…

(4)

Motivation

• Cloud computing is here to stay

• Changing the way we engineer software

• Leverage the power of cloud in testing

(5)

Objectives

What is the cloud about?

How is it different from traditional computing?

What is testing in the cloud?

What does it mean for testers?

Where to start?

(6)

What is Cloud Computing?

An old idea whose time has finally come

If computers of the kind I have advocated become the computers of

the future, then computing may someday be organized as a public

utility just as the telephone system is a public utility. The computer

utility could become the basis of a new and important industry.

(7)

What is Cloud Computing?

Virtualized hardware

SOA, On-demand, utility model

Rapid elasticity

Resource abstraction techniques

Multi-tenancy

Self-healing

(8)
(9)
(10)
(11)

Cloud Delivery Models

Public

• Services offered by a provider that are publicly available, can be used with a contractual agreement

Private

• Virtualized resources available as a service owned by individual organization • Client managed, customization, high efficiency, privacy and security policies

Hybrid

• Mix of public and private • Extend private cloud via VPN

(12)

Cloud Benefits

Faster, cheaper, better

Flexible

• Multiple test beds for multiple release testing

• Instant setup, tear down

Scalable

• Virtualized environments

• Scalable resources

On-demand

(13)
(14)

What Does it Mean for Testers?

(15)

Software Testing in the Cloud

Lies at the intersection of three key areas

• Software Testing

• Cloud Computing

• System Migration

STITC (Software Testing in the Cloud)

• Testing in the cloud

• Testing of the cloud

• Migrating testing to the cloud

(16)

Traditional

Testing

Low asset utilization

Scalability: Long time to increase capacity

Long time to build datacenters Difficult to manage

Duplicate test systems Creates unnecessary waste

Testing in the

Cloud

Improved asset utilization Less time (instantaneous) increase

and reduction in capacity Purchased as a service from cloud

providers

Better management and increased productivity

Aggregated system Cleaner, greener testing

(17)

Case Studies

Case Study #1: Concurrent execution of JUnit test

cases

Case Study #2: Concurrent execution of GUI testing of

iOS applications

• It can take a large number of test cases to cover all the variations

that users could experience

• Different configurations

• OS versions (iOS ?)

• Device Orientations (Portrait, Landscape)

• Screen sizes (3.5", 4")

(18)
(19)
(20)

Software Testing in the Cloud

Management

• Process

• Technology

• People

Cloud testing strategy

Roles and responsibilities

Can’t be

achieved as an

execution-only

(21)

Management: Process

Strengths

• Faster • Cheaper • Better

Weakness

• Network connectivity • Security • Standards • Availability • Performance • Project management

Opportunities

• Faster execution • Faster feedback • Efficient testing process • Value proposition

Threats

• Complexity • Hype • Vendor lock • Tool chain • Education • Training

SWOT

ANAYSIS

(22)

Management: Process

Migration Strategy

• Where are you now?

• Where do you go next?

SMART-T: A decision

framework to migrate

testing to the cloud

Desirable

Faster Cheaper Better

Business Drivers Feasible YES YES Types of Applications Technical Factors Types of Testing Test Execution Environment Acceptable NO NO YES NO Stakeholders

Workshop Pilot Study

Evaluation Results Trial Migration Adjust Estimates Document Guidelines Implement Migration Plan Actual Migration MAYBE MAYBE MAYBE Operational Results

(23)

Management: Process

Evaluate current overlapping activities

• Agile development and testing

• Test early, test often

• TDD, Unit testing

• JUnit in the cloud

• Google Test in the cloud

• HadoopUnit

• Faster feedback

• Automation

(24)

Management: Process

Cost model

• How much does it cost you to test now?

• Do you have a test lab? Machines for every project?

• How often do you configure the machines?

• How often do you upgrade them?

ABC: Activity Based Cost model – Identify

and put $$ to all the big and small activities

(25)
(26)

Management: Technology

Testing as a Service

Distributed processing technologies

Test execution environments

(27)

Management: Technology

(28)

Management: People

Will your testers be able to adapt to cloud testing?

• Testing at many levels – User Interface, Services, Governance, Process, Security, Integration

Programmers?

• Beyond unit testing

System administrators?

• Cloud service providers

Training

Continuing education

Testing skills, programming skills

Communication skills

(29)

Testing in the Cloud: Strategy

Does testing in the change the foundation of testing?

Does it involve new technique, technology, and domain?

How is it going to effect your current tasks? (good/bad)

Do you need new skills?

Are there different types of testing?

Are there tools to help you?

Risks associated with cloud testing

Assumptions, constraints

(30)

Testing in the Cloud: Strategy

Critical Success Factors (CSF)

What are the CSF for testing in the cloud?

• Automation?

• Skilled testers?

• Test lab/environment?

How do your measure them?

• Post release evaluation?

• Number of bugs for the release

• Test lab setup and tear down?

(31)
(32)

Roles and Responsibilities

Developers: Unit testing, Integration testing

Test Analyst: Implement testing in the cloud strategy

Technical Test Analyst: Testers

Customers: Acceptance testing

IT department: POC to cloud provider, monitoring, availability

Cloud providers: SLA, services testing

(33)
(34)

Lessons Learned

Testing Environment is a legacy system

Acceptability of partial migrations

Selecting/Preparing test execution environment

Configuration in the cloud is challenging

The nature of the test cases

False negatives

(35)

What Does it Mean for Testers?

(36)

Key Points

Software testing is challenging activity

SOA, virtualization, computational grid, and cloud computing bring efficiency in development process/consumer need

Leverage these technologies in software testing

Plan, start early, know your goals

Understand the holistic system architecture

Understand the migrated test data

(37)

Key Points

Cloud computing is not hype!!!

Provides the infrastructure to process Big Data

It’s changing the testing landscape

It’s changing the testing profession

We have had similar shifts in the past

Cloud computing is here to stay

(38)

Food for thought!!!

(39)
(40)

Thank You

[email protected]

References:

• Jamsa: Cloud Computing: SaaS, PaaS, IaaS, Virtualization, Business Models, Mobile, Security

References

Related documents

The voltage variation signals which consist of voltage sag, swell and interruption will be simulated from MATLAB and then analyzed through the Gabor transform.. From the

109 Meas ure of prostag landin E 2 (PG E 2 ) prod uction by CCD-18 colon fibro blast ce lls stimulated with IL-1 b 3-Hy droxybe nzoic acid ; 4 - hydro xybenoz oic acid; protoc

Cloud-based tools also enhance existing agile development cycles, resulting in continuous testing, high quality testing and speed to market.. Testing on the cloud also offers

Student selected projects are also difficult if the course developer would like to include the full design cycle (design, build and test) as students at that stage of their

A Private Cloud Service Provider offers application hosting and software services available through a private cloud dedicated to a single enterprise.. A Public Cloud Service

Based on the above, the AAR ruled that the capital gains arising on sale of shares of the Indian listed company is not taxable in India as the conditions of Limitation of

Constituents: Glycerides of;  Palmitic acid  Stearic acid  Arachidic acid  Oleic acid  Linoleic acid  Linolenic acid Uses:  Nutritive SUNFLOWER OIL

the files with desktop Office applications or online Office Web Lync: Communicate with colleagues using Instant Messaging, audio/video.. calling or take part in a