IoT Integrity: A Guide to Robust Endpoint Testing
-
Upload
josiah-renaudin -
Category
Software
-
view
77 -
download
0
Transcript of IoT Integrity: A Guide to Robust Endpoint Testing
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