13
T15 Track Session 4/21/2016 3:15 PM Use the Modern Cloud to Build Mobile AppsPresented by: Arthur Hicken Parasoft Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 · 904-278-0524 · [email protected] · www.techwell.com

IoT Integrity: A Guide to Robust Endpoint Testing

Embed Size (px)

Citation preview

T15TrackSession4/21/20163:15PM

“UsetheModernCloudtoBuildMobileApps”

Presented by:

Arthur Hicken

Parasoft

Broughttoyouby:

340CorporateWay,Suite300,OrangePark,FL32073888-268-8770·904-278-0524·[email protected]·www.techwell.com

Arthur Hicken Parasoft Arthur Hicken has been involved in automating various practices at Parasoft for more than twenty years. He has worked on projects including database development, the software development lifecycle, web publishing and monitoring, and integration with legacy systems. Arthur has worked with IT departments in companies including Cisco, Vanguard, and Motorola to help improve their software development practices. He has developed and conducted numerous technical training courses at Parasoft. An expert in his field, Arthur has been quoted in Business 2.0, Internet Week, and CNET news.com regarding website quality issues.

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 1

Parasoft © 2016 All Rights Reserved 1

IoT Integrity: A Guide to Robust Endpoint Testing IoT Integrity: A Guide to Robust Endpoint Testing Parasoft

Arthur Hicken ([email protected])Parasoft

Arthur Hicken ([email protected])

Parasoft © 2016 All Rights Reserved 22

Your PresenterYour PresenterArthur Hicken is Chief Evangelist at Parasoft where he has been involved in automating various software development and testing practices for over 20 years. He has worked on projects including cybersecurity, database development, the software development lifecycle, web publishing and monitoring, and integration with legacy systems. Follow him @codecurmudgeonBlog: http://codecurmudgeon.comWeb: http://parasoft.com

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 2

Parasoft © 2016 All Rights Reserved 33

AgendaAgenda

IoT specificsIoT specificsChallenges in quality assuranceChallenges in quality assuranceEffectiveness of end-to-end testingEffectiveness of end-to-end testingDoing it betterDoing it better

Parasoft © 2016 All Rights Reserved 44

Things are EverywhereThings are Everywhere

Industrial Automation Smart Health

Smart Home Smart City

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 3

Parasoft © 2016 All Rights Reserved 55

Already on the MarketAlready on the Market

Parasoft © 2016 All Rights Reserved 66

Aspects of IoTAspects of IoT

Communication Backbone Identification Hardware Sensors Protocols Software Data Brokers / Cloud Platforms Machine Learning Security

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 4

Parasoft © 2016 All Rights Reserved 77

IoT EcosystemIoT Ecosystem

Connect to any 3rd party clouds;integrate API to partner services to offer services like DR or Warranty

Interact withoutside sources of data

Dynamic ability toadd premiumfeatures andcapabilities at anytime

Enable data reporting and analytics for marketing, engineering, warranty,end user,etc.

Integrate withother Ecosystems

Parasoft © 2016 All Rights Reserved 88

IoT specifics IoT specifics

Multi-layered systems Disparate technologies Functionality

spanning across many layers

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 5

Parasoft © 2016 All Rights Reserved 99

IoT specificsIoT specifics

Even simple functionality may require different teams to develop Debugging requires solid understanding of many technologies Complex functionality may be hidden behind simple interface

Parasoft © 2016 All Rights Reserved 1010

Why it is difficult to test IoTWhy it is difficult to test IoT

Disparate development technologies hamper introducing consistent testing strategies “Not enough code to justify testing” syndrome Limited user interface make the solution to look deceptively simple Inverted testing pyramid problem

Strong temptation to rely entirely on system testing

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 6

Parasoft © 2016 All Rights Reserved 1111

Effectiveness of end-to-end testingEffectiveness of end-to-end testing

Labor intensive Difficult to automate Difficult to start early Requires inter-team synchronization Difficult to test error handlers Failed tests do not provide precise information about failure points

Parasoft © 2016 All Rights Reserved 1212

Effectiveness of end-to-end testingEffectiveness of end-to-end testing

End-to-End testing for diabetes health system example Difficult to apply stimulation Difficult to validate test result Difficult to test error handlers

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 7

Parasoft © 2016 All Rights Reserved 1313

Effective IoT TestingEffective IoT Testing

Avoid manual end-to-end testing Invest more into automated tests at component Follow testing pyramid rules Measure:

test results test effectiveness

Determine: Risk

Parasoft © 2016 All Rights Reserved 1414

How to do it better ?How to do it better ?

Give absolute priority to automated tests Invest time into designing interfaces (API) Use API (service) testing tools to cover interfaces Measure the quality of the test

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 8

Parasoft © 2016 All Rights Reserved 1515

How to do it better ?How to do it better ?

Use stubs and mocks to improve: Facilitate test automation Increase code penetration

Parasoft © 2016 All Rights Reserved 1616

How to do it better ?How to do it better ?

Use service virtualization to improve testing automation Isolate at the message layer Simulate functional scenarios and performance conditions

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 9

Parasoft © 2016 All Rights Reserved 1717

How to do it better ?How to do it better ? Report test results against requirements Try to get holistic view of your testing process Collect/review test data from different layers Assess health of given feature across all layers

Parasoft © 2016 All Rights Reserved 1818

Test scenario exampleTest scenario example

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 10

Parasoft © 2016 All Rights Reserved 1919

Test Scenario: REQUEST_NEW_BOLUS_UPDATE_PUMPTest Scenario: REQUEST_NEW_BOLUS_UPDATE_PUMP

Tested System

Tested System

Parasoft © 2016 All Rights Reserved 2020

SummarySummary

IoT combines previously isolated technologies Multiple Tiers = Complexity = Risk End to End Testing = Chain is only as strong as it’s weakest link

Reliable quality process allows organizations to assess modules individually and in combination Continuously automate testing Traceability across tiers, technologies and testing techniques

Mobile Dev + Test 2016 San Diego April 21, 2016

IoT Integrity© Parasoft All Rights Reserved 11

Parasoft © 2016 All Rights Reserved 2121

ReferencesReferences

• Cisco: Over 50 billions of devices connected to Internet http://blogs.cisco.com/news/the-internet-of-things-infographic/• Vlad Trifa: HomeWeb and Android at Home – challenges? http://www.webofthings.com/2011/06/10/homeweb-and-android-at-home-challenges/• IoT - Visit the future: http://www.iot-visitthefuture.eu/index.php?id=108

Parasoft © 2016 All Rights Reserved 2222

Web http://www.parasoft.com

Blog http://alm.parasoft.com http://codecurmudgeon.com

SocialFacebook: https://www.facebook.com/parasoftcorporationTwitter: @Parasoft @CodeCurmudgeonLinkedIn: http://www.linkedin.com/company/parasoft