SlideShare una empresa de Scribd logo
1 de 18
Testing Automation
– As presented by Nagarajan Selvarajan,
Technical Architect @ Techcafe -2014
Magento
Hybris Commerce
SaaS Applications
Adobe Marketing Cloud
Custom Development
300+ team with experience
in managing offshore,
distributed development.
Neev Technologies
established in Jan ’05
VC Funding in 2009 By
Basil Partners
Part of Publicis Groupe
Hybris and Adobe CQ
centers of Excellence
Offices at Bangalore,
Gurgaon, Pune, Mumbai
Member of NASSCOM
Key Company Highlights
iPhone
Android
PhoneGap
Windows Phone
HTML5 Apps
Web
AWS
Rackspace
Joyent
Heroku
Google Cloud Platform
Mobile Cloud
Outsourced Product Development
User Interface Design and User Experience Design
Performance Consulting Practices
Quality Assurance & Testing
Digital Marketing, CRM, Analytics (Omni-Channel)
About Neev
Use of special software (separate from the software being
tested) to control the execution of tests and the comparison
of actual outcomes with predicted outcomes.
What is Test Automation?
• Saves Time & Money in comparison with Manual testing whether you
retrofit your existing code with tests, or make test automation a
requirement for all future development, it's a good investment.
• Unleash the power of Agile development - test automation and continuous
integration are the cornerstones of Agile development.
• Create a Safety Net - Trying new things can be scary. But with the safety of
automated tests, developers have the freedom to innovate knowing that
any "gotchas“ will be immediately apparent.
Why Automate?
• Catch more bugs - repetitive tasks like manual testing numb the mind and
invite mistakes. Testers slowly become less focused on their task, and are
more likely to let defects slip through. But a computer isn't affected by this
phenomenon. So, automation ensures that each test is rigorously executed
every time.
• Foster new skills on your team - QA engineers and developers are inquisitive
people by nature. So why not channel that curiosity into acquiring new skills?
• Testers who learn how to code - and coders who learn how to think like
testers – become empowered, indispensable members of the team. And
team members who cross-train in each other's skills also learn to work better
together.
Why Automate?
• Practice Continuous Integration - Testing changes right away dramatically
reduces the cost of addressing defects, so kick off a build with each commit,
or at scheduled intervals throughout the day.
• Run automated tests in parallel - Breaking a test suite into smaller batches
by functional area, level of the technology stack (unit, API, UI, etc) and
running them simultaneously is the fastest way to provide feedback to
developers.
• Practice continuous integration on branches - working in isolation on a
branch gives developers room to experiment and protects the master code
line from regressions - if the branch is tested as rigorously as the master.
Test Automation Basics
• Apply your continuous integration scheme to new branches as soon as they
are created. Pull in changes from other team members frequently to
uncover compatibility problems and ease the final integration with master.
• Quarantine flakey tests - When the problem can't be fixed right away, pull
the test out temporarily. Quarantined tests should be run separately and
reincorporated into the main build as soon as possible.
Test Automation Basics
• JavaScript test framework running on Node.js and the browser, making
asynchronous testing simple. s
• Assertions - Assertions libraries like should.js and expect.js can be used.
describe('Array', function(){
describe('#indexOf()', function(){
it('should return -1 when the value
is not present', function(){
[1,2,3].indexOf(5).should.equal(-1);
[1,2,3].indexOf(0).should.equal(-1);
})
})
})
Mocha
• Synchronous support
describe('Array', function(){
describe('#indexOf()', function(){
it('should return -1 when the value is not present', function(){
[1,2,3].indexOf(5).should.equal(-1);
[1,2,3].indexOf(0).should.equal(-1);
})
})
})
Mocha
• Asynchronous support
describe('User', function(){
describe('#save()', function(){
it('should save without error', function(done){
var user = new User('Luna');
user.save(function(err){
if (err) throw err;
done();
});
})
})
})
Mocha
• Hooks - Before each, After each
beforeEach(function(done){
db.clear(function(err){
if (err) return done(err);
db.save([tobi, loki, jane], done);
});
})
describe('#find()', function(){
it('respond with matching records', function(done){
db.find({ type: 'User' }, function(err, res){
if (err) return done(err);
res.should.have.length(3);
done();
})
})
})
})
Mocha
• Pending tests
describe('Array', function(){
describe('#indexOf()', function(){
it('should return -1 when the value is not present')
})
})
Mocha
• Reporting
– Types of reporting (Spec, Progress bar, JSON, Dot, etc)
– Test duration with color indicator (slow, reasonable, fast)
– Report differences (actual vs expected)
Mocha
Demo
nagarajan@Neev:~/ mocha --reporter=spec
--timeout 120000 test/api_fileupload
Cannot load StringPrep-0.1.0 bindings. You may need to `npm install node-
stringprep`
Media asset (picture) upload
✓ Start session API: should succeed on valid inputs (57ms)
✓ should upload file in parts (29032ms)
Sensory data upload
✓ Start session API: should succeed on valid inputs (136ms)
✓ should upload sensory data (22176ms)
4 passing (57s)
Mocha
Partnerships
A Few Clients
India - Bangalore
The Estate, # 121,6th Floor,
Dickenson Road
Bangalore-560042
Phone :+91 80 25594416
Neev Information Technologies Pvt. Ltd. sales@neevtech.com
India - Pune
Office No. 4 & 5, 2nd floor, L-Square,
Plot No. 8, Sanghvi Nagar, Aundh,
Pune - 411007.
Phone :+91 20 64103338
For more info on our offerings, visit www.neevtech.com

Más contenido relacionado

La actualidad más candente

Neev Application Performance Management Services
Neev Application Performance Management ServicesNeev Application Performance Management Services
Neev Application Performance Management ServicesNeev Technologies
 
Neev Hackathon 2013 - Super Feet
Neev Hackathon 2013 - Super FeetNeev Hackathon 2013 - Super Feet
Neev Hackathon 2013 - Super FeetNeev Technologies
 
Neev capabilities in building video and live streaming apps
Neev capabilities in building video and live streaming appsNeev capabilities in building video and live streaming apps
Neev capabilities in building video and live streaming appsNeev Technologies
 
Practical strategies to innovate faster and meet business goals
Practical strategies to innovate faster and meet business goalsPractical strategies to innovate faster and meet business goals
Practical strategies to innovate faster and meet business goalsWaveMaker, Inc.
 
Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application DevelopmentWaveMaker, Inc.
 
Peerbits - offshore remote teams
Peerbits - offshore remote teamsPeerbits - offshore remote teams
Peerbits - offshore remote teamsNoman Shaikh
 
Enterprise App Dev Platform to keep your "Developers, Architects and CIO" Happy
Enterprise App Dev Platform to keep your "Developers, Architects and CIO" HappyEnterprise App Dev Platform to keep your "Developers, Architects and CIO" Happy
Enterprise App Dev Platform to keep your "Developers, Architects and CIO" HappyWaveMaker, Inc.
 
The Future of B2B: Applying API-Led Connectivity to B2B/EDI - Eric Rempel, CI...
The Future of B2B: Applying API-Led Connectivity to B2B/EDI - Eric Rempel, CI...The Future of B2B: Applying API-Led Connectivity to B2B/EDI - Eric Rempel, CI...
The Future of B2B: Applying API-Led Connectivity to B2B/EDI - Eric Rempel, CI...MuleSoft
 
Building a REST API for Longevity
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for LongevityMuleSoft
 
Accelerate Enterprise Mobile Application Development
Accelerate Enterprise Mobile Application DevelopmentAccelerate Enterprise Mobile Application Development
Accelerate Enterprise Mobile Application DevelopmentWaveMaker, Inc.
 
APIdays Paris 2019 - Microservices vs Miniservices vs Monoliths: Winner Takes...
APIdays Paris 2019 - Microservices vs Miniservices vs Monoliths: Winner Takes...APIdays Paris 2019 - Microservices vs Miniservices vs Monoliths: Winner Takes...
APIdays Paris 2019 - Microservices vs Miniservices vs Monoliths: Winner Takes...apidays
 
Jump start your Rapid Application Delivery with WaveMaker
Jump start your Rapid Application Delivery with WaveMakerJump start your Rapid Application Delivery with WaveMaker
Jump start your Rapid Application Delivery with WaveMakerWaveMaker, Inc.
 

La actualidad más candente (20)

Neev mobile offerings
Neev mobile offeringsNeev mobile offerings
Neev mobile offerings
 
Project Execution @ Neev
Project Execution @ NeevProject Execution @ Neev
Project Execution @ Neev
 
Neev Application Performance Management Services
Neev Application Performance Management ServicesNeev Application Performance Management Services
Neev Application Performance Management Services
 
Neev for Startups
Neev for StartupsNeev for Startups
Neev for Startups
 
Neev Hackathon - 2013
Neev Hackathon - 2013Neev Hackathon - 2013
Neev Hackathon - 2013
 
DevOps and AppDynamics
DevOps and AppDynamicsDevOps and AppDynamics
DevOps and AppDynamics
 
Neev Hackathon 2013 - Super Feet
Neev Hackathon 2013 - Super FeetNeev Hackathon 2013 - Super Feet
Neev Hackathon 2013 - Super Feet
 
Neev capabilities in building video and live streaming apps
Neev capabilities in building video and live streaming appsNeev capabilities in building video and live streaming apps
Neev capabilities in building video and live streaming apps
 
Practical strategies to innovate faster and meet business goals
Practical strategies to innovate faster and meet business goalsPractical strategies to innovate faster and meet business goals
Practical strategies to innovate faster and meet business goals
 
Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application Development
 
Peerbits - offshore remote teams
Peerbits - offshore remote teamsPeerbits - offshore remote teams
Peerbits - offshore remote teams
 
Enterprise App Dev Platform to keep your "Developers, Architects and CIO" Happy
Enterprise App Dev Platform to keep your "Developers, Architects and CIO" HappyEnterprise App Dev Platform to keep your "Developers, Architects and CIO" Happy
Enterprise App Dev Platform to keep your "Developers, Architects and CIO" Happy
 
The Future of B2B: Applying API-Led Connectivity to B2B/EDI - Eric Rempel, CI...
The Future of B2B: Applying API-Led Connectivity to B2B/EDI - Eric Rempel, CI...The Future of B2B: Applying API-Led Connectivity to B2B/EDI - Eric Rempel, CI...
The Future of B2B: Applying API-Led Connectivity to B2B/EDI - Eric Rempel, CI...
 
Building a REST API for Longevity
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for Longevity
 
Accelerate Enterprise Mobile Application Development
Accelerate Enterprise Mobile Application DevelopmentAccelerate Enterprise Mobile Application Development
Accelerate Enterprise Mobile Application Development
 
APIdays Paris 2019 - Microservices vs Miniservices vs Monoliths: Winner Takes...
APIdays Paris 2019 - Microservices vs Miniservices vs Monoliths: Winner Takes...APIdays Paris 2019 - Microservices vs Miniservices vs Monoliths: Winner Takes...
APIdays Paris 2019 - Microservices vs Miniservices vs Monoliths: Winner Takes...
 
UX @ Neev
UX @ NeevUX @ Neev
UX @ Neev
 
Ruby on rails api Development case study
Ruby on rails api Development case studyRuby on rails api Development case study
Ruby on rails api Development case study
 
brochure
brochurebrochure
brochure
 
Jump start your Rapid Application Delivery with WaveMaker
Jump start your Rapid Application Delivery with WaveMakerJump start your Rapid Application Delivery with WaveMaker
Jump start your Rapid Application Delivery with WaveMaker
 

Similar a Test Automation - Presented by Nagarajan, Architect @ TechCafe-2014

Leveraging HP Performance Center
Leveraging HP Performance CenterLeveraging HP Performance Center
Leveraging HP Performance CenterMartin Spier
 
Javascript-heavy Salesforce Applications
Javascript-heavy Salesforce ApplicationsJavascript-heavy Salesforce Applications
Javascript-heavy Salesforce ApplicationsSalesforce Developers
 
Beginners overview of automated testing with Rspec
Beginners overview of automated testing with RspecBeginners overview of automated testing with Rspec
Beginners overview of automated testing with Rspecjeffrey1ross
 
Choosing right-automation-tool
Choosing right-automation-toolChoosing right-automation-tool
Choosing right-automation-toolBabuDevanandam
 
QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER Piyush Prakash
 
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f..." Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...Lohika_Odessa_TechTalks
 
DevOps for Machine Learning overview en-us
DevOps for Machine Learning overview en-usDevOps for Machine Learning overview en-us
DevOps for Machine Learning overview en-useltonrodriguez11
 
Jonathon Wright - Intelligent Performance Cognitive Learning (AIOps)
Jonathon Wright - Intelligent Performance Cognitive Learning (AIOps)Jonathon Wright - Intelligent Performance Cognitive Learning (AIOps)
Jonathon Wright - Intelligent Performance Cognitive Learning (AIOps)Neotys_Partner
 
ott_calfee_resume
ott_calfee_resumeott_calfee_resume
ott_calfee_resumeOtt Calfee
 
Karim Fanadka
Karim FanadkaKarim Fanadka
Karim FanadkaCodeFest
 
Building a Continuous Delivery Pipeline With Visual Studio
Building a Continuous Delivery Pipeline With Visual StudioBuilding a Continuous Delivery Pipeline With Visual Studio
Building a Continuous Delivery Pipeline With Visual StudioKasun Kodagoda
 
#ATAGTR2021 Presentation - "Test Craftmanship: Crafting Continuously Evolving...
#ATAGTR2021 Presentation - "Test Craftmanship: Crafting Continuously Evolving...#ATAGTR2021 Presentation - "Test Craftmanship: Crafting Continuously Evolving...
#ATAGTR2021 Presentation - "Test Craftmanship: Crafting Continuously Evolving...Agile Testing Alliance
 

Similar a Test Automation - Presented by Nagarajan, Architect @ TechCafe-2014 (20)

Code in the Cloud - Ghent - 20 February 2015
Code in the Cloud - Ghent - 20 February 2015Code in the Cloud - Ghent - 20 February 2015
Code in the Cloud - Ghent - 20 February 2015
 
Test automation within a scrum process
Test automation within a scrum processTest automation within a scrum process
Test automation within a scrum process
 
Meenakshi Pal_16
Meenakshi Pal_16Meenakshi Pal_16
Meenakshi Pal_16
 
Leveraging HP Performance Center
Leveraging HP Performance CenterLeveraging HP Performance Center
Leveraging HP Performance Center
 
Javascript-heavy Salesforce Applications
Javascript-heavy Salesforce ApplicationsJavascript-heavy Salesforce Applications
Javascript-heavy Salesforce Applications
 
Yasfeen_Sultana
Yasfeen_SultanaYasfeen_Sultana
Yasfeen_Sultana
 
Beginners overview of automated testing with Rspec
Beginners overview of automated testing with RspecBeginners overview of automated testing with Rspec
Beginners overview of automated testing with Rspec
 
Choosing right-automation-tool
Choosing right-automation-toolChoosing right-automation-tool
Choosing right-automation-tool
 
QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER
 
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f..." Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
 
DevOps for Machine Learning overview en-us
DevOps for Machine Learning overview en-usDevOps for Machine Learning overview en-us
DevOps for Machine Learning overview en-us
 
Jonathon Wright - Intelligent Performance Cognitive Learning (AIOps)
Jonathon Wright - Intelligent Performance Cognitive Learning (AIOps)Jonathon Wright - Intelligent Performance Cognitive Learning (AIOps)
Jonathon Wright - Intelligent Performance Cognitive Learning (AIOps)
 
Yasfeen_Sultana
Yasfeen_SultanaYasfeen_Sultana
Yasfeen_Sultana
 
Abhilash Alwandi_Resume
Abhilash Alwandi_ResumeAbhilash Alwandi_Resume
Abhilash Alwandi_Resume
 
ott_calfee_resume
ott_calfee_resumeott_calfee_resume
ott_calfee_resume
 
Karim Fanadka
Karim FanadkaKarim Fanadka
Karim Fanadka
 
Building a Continuous Delivery Pipeline With Visual Studio
Building a Continuous Delivery Pipeline With Visual StudioBuilding a Continuous Delivery Pipeline With Visual Studio
Building a Continuous Delivery Pipeline With Visual Studio
 
#ATAGTR2021 Presentation - "Test Craftmanship: Crafting Continuously Evolving...
#ATAGTR2021 Presentation - "Test Craftmanship: Crafting Continuously Evolving...#ATAGTR2021 Presentation - "Test Craftmanship: Crafting Continuously Evolving...
#ATAGTR2021 Presentation - "Test Craftmanship: Crafting Continuously Evolving...
 
Rajiv Profile
Rajiv ProfileRajiv Profile
Rajiv Profile
 
Oak testing profile2013
Oak testing profile2013Oak testing profile2013
Oak testing profile2013
 

Más de Neev Technologies

Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ NeevAdobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ NeevNeev Technologies
 
Hybris Hackathon - Split Payments in Hybris
Hybris Hackathon - Split Payments in HybrisHybris Hackathon - Split Payments in Hybris
Hybris Hackathon - Split Payments in HybrisNeev Technologies
 
Hybris Hackathon - Data Modeling
Hybris Hackathon - Data ModelingHybris Hackathon - Data Modeling
Hybris Hackathon - Data ModelingNeev Technologies
 
Building A Jewelry e-store - Now, sell your jewelry to the world!
Building A Jewelry e-store - Now, sell your jewelry to the world!Building A Jewelry e-store - Now, sell your jewelry to the world!
Building A Jewelry e-store - Now, sell your jewelry to the world!Neev Technologies
 
How to add Custom Font to your iOS-based App?
How to add Custom Font to your iOS-based App?How to add Custom Font to your iOS-based App?
How to add Custom Font to your iOS-based App?Neev Technologies
 
Our Experience on Google Map Integration with Apps
Our Experience on Google Map Integration with AppsOur Experience on Google Map Integration with Apps
Our Experience on Google Map Integration with AppsNeev Technologies
 
Mobile Responsive Design @ Neev
Mobile Responsive Design @ NeevMobile Responsive Design @ Neev
Mobile Responsive Design @ NeevNeev Technologies
 
Business Intelligence Capabilities @ Neev
Business Intelligence Capabilities @ NeevBusiness Intelligence Capabilities @ Neev
Business Intelligence Capabilities @ NeevNeev Technologies
 
Neev Conversion Strategy Capabilities
Neev Conversion Strategy CapabilitiesNeev Conversion Strategy Capabilities
Neev Conversion Strategy CapabilitiesNeev Technologies
 
A Digital Mirror for Luxury Jewelry Stores
A Digital Mirror for Luxury Jewelry StoresA Digital Mirror for Luxury Jewelry Stores
A Digital Mirror for Luxury Jewelry StoresNeev Technologies
 
Neev Open Source Contributions
Neev Open Source ContributionsNeev Open Source Contributions
Neev Open Source ContributionsNeev Technologies
 
Native Mobile Platforms vs Phonegap – A Comparison
Native Mobile Platforms vs Phonegap – A ComparisonNative Mobile Platforms vs Phonegap – A Comparison
Native Mobile Platforms vs Phonegap – A ComparisonNeev Technologies
 
That thing called Requirements - Presented by Mona Walia, Business Analyst @ ...
That thing called Requirements - Presented by Mona Walia, Business Analyst @ ...That thing called Requirements - Presented by Mona Walia, Business Analyst @ ...
That thing called Requirements - Presented by Mona Walia, Business Analyst @ ...Neev Technologies
 
Trendywalks - A Hybris-based eCommerce Store with Custom Features
Trendywalks - A Hybris-based eCommerce Store with Custom FeaturesTrendywalks - A Hybris-based eCommerce Store with Custom Features
Trendywalks - A Hybris-based eCommerce Store with Custom FeaturesNeev Technologies
 

Más de Neev Technologies (20)

Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ NeevAdobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
Adobe Experience Manager (Adobe CQ) Capabilities and Experience @ Neev
 
Hybris Hackathon - Split Payments in Hybris
Hybris Hackathon - Split Payments in HybrisHybris Hackathon - Split Payments in Hybris
Hybris Hackathon - Split Payments in Hybris
 
Hybris Hackathon - Data Modeling
Hybris Hackathon - Data ModelingHybris Hackathon - Data Modeling
Hybris Hackathon - Data Modeling
 
Gameathon @ Neev
Gameathon @ NeevGameathon @ Neev
Gameathon @ Neev
 
Building A Jewelry e-store - Now, sell your jewelry to the world!
Building A Jewelry e-store - Now, sell your jewelry to the world!Building A Jewelry e-store - Now, sell your jewelry to the world!
Building A Jewelry e-store - Now, sell your jewelry to the world!
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
 
How to add Custom Font to your iOS-based App?
How to add Custom Font to your iOS-based App?How to add Custom Font to your iOS-based App?
How to add Custom Font to your iOS-based App?
 
Our Experience on Google Map Integration with Apps
Our Experience on Google Map Integration with AppsOur Experience on Google Map Integration with Apps
Our Experience on Google Map Integration with Apps
 
Drupal Capabilities @ Neev
Drupal Capabilities @ NeevDrupal Capabilities @ Neev
Drupal Capabilities @ Neev
 
Neev AngularJS Capabilities
Neev AngularJS CapabilitiesNeev AngularJS Capabilities
Neev AngularJS Capabilities
 
Mobile Responsive Design @ Neev
Mobile Responsive Design @ NeevMobile Responsive Design @ Neev
Mobile Responsive Design @ Neev
 
Business Intelligence Capabilities @ Neev
Business Intelligence Capabilities @ NeevBusiness Intelligence Capabilities @ Neev
Business Intelligence Capabilities @ Neev
 
Neev Conversion Strategy Capabilities
Neev Conversion Strategy CapabilitiesNeev Conversion Strategy Capabilities
Neev Conversion Strategy Capabilities
 
RazorfishNeev - An Overview
RazorfishNeev - An OverviewRazorfishNeev - An Overview
RazorfishNeev - An Overview
 
A Digital Mirror for Luxury Jewelry Stores
A Digital Mirror for Luxury Jewelry StoresA Digital Mirror for Luxury Jewelry Stores
A Digital Mirror for Luxury Jewelry Stores
 
Neev Open Source Contributions
Neev Open Source ContributionsNeev Open Source Contributions
Neev Open Source Contributions
 
Native Mobile Platforms vs Phonegap – A Comparison
Native Mobile Platforms vs Phonegap – A ComparisonNative Mobile Platforms vs Phonegap – A Comparison
Native Mobile Platforms vs Phonegap – A Comparison
 
That thing called Requirements - Presented by Mona Walia, Business Analyst @ ...
That thing called Requirements - Presented by Mona Walia, Business Analyst @ ...That thing called Requirements - Presented by Mona Walia, Business Analyst @ ...
That thing called Requirements - Presented by Mona Walia, Business Analyst @ ...
 
Hybris @ Neev
Hybris @ NeevHybris @ Neev
Hybris @ Neev
 
Trendywalks - A Hybris-based eCommerce Store with Custom Features
Trendywalks - A Hybris-based eCommerce Store with Custom FeaturesTrendywalks - A Hybris-based eCommerce Store with Custom Features
Trendywalks - A Hybris-based eCommerce Store with Custom Features
 

Último

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 

Último (20)

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 

Test Automation - Presented by Nagarajan, Architect @ TechCafe-2014

  • 1. Testing Automation – As presented by Nagarajan Selvarajan, Technical Architect @ Techcafe -2014
  • 2. Magento Hybris Commerce SaaS Applications Adobe Marketing Cloud Custom Development 300+ team with experience in managing offshore, distributed development. Neev Technologies established in Jan ’05 VC Funding in 2009 By Basil Partners Part of Publicis Groupe Hybris and Adobe CQ centers of Excellence Offices at Bangalore, Gurgaon, Pune, Mumbai Member of NASSCOM Key Company Highlights iPhone Android PhoneGap Windows Phone HTML5 Apps Web AWS Rackspace Joyent Heroku Google Cloud Platform Mobile Cloud Outsourced Product Development User Interface Design and User Experience Design Performance Consulting Practices Quality Assurance & Testing Digital Marketing, CRM, Analytics (Omni-Channel) About Neev
  • 3. Use of special software (separate from the software being tested) to control the execution of tests and the comparison of actual outcomes with predicted outcomes. What is Test Automation?
  • 4. • Saves Time & Money in comparison with Manual testing whether you retrofit your existing code with tests, or make test automation a requirement for all future development, it's a good investment. • Unleash the power of Agile development - test automation and continuous integration are the cornerstones of Agile development. • Create a Safety Net - Trying new things can be scary. But with the safety of automated tests, developers have the freedom to innovate knowing that any "gotchas“ will be immediately apparent. Why Automate?
  • 5. • Catch more bugs - repetitive tasks like manual testing numb the mind and invite mistakes. Testers slowly become less focused on their task, and are more likely to let defects slip through. But a computer isn't affected by this phenomenon. So, automation ensures that each test is rigorously executed every time. • Foster new skills on your team - QA engineers and developers are inquisitive people by nature. So why not channel that curiosity into acquiring new skills? • Testers who learn how to code - and coders who learn how to think like testers – become empowered, indispensable members of the team. And team members who cross-train in each other's skills also learn to work better together. Why Automate?
  • 6. • Practice Continuous Integration - Testing changes right away dramatically reduces the cost of addressing defects, so kick off a build with each commit, or at scheduled intervals throughout the day. • Run automated tests in parallel - Breaking a test suite into smaller batches by functional area, level of the technology stack (unit, API, UI, etc) and running them simultaneously is the fastest way to provide feedback to developers. • Practice continuous integration on branches - working in isolation on a branch gives developers room to experiment and protects the master code line from regressions - if the branch is tested as rigorously as the master. Test Automation Basics
  • 7. • Apply your continuous integration scheme to new branches as soon as they are created. Pull in changes from other team members frequently to uncover compatibility problems and ease the final integration with master. • Quarantine flakey tests - When the problem can't be fixed right away, pull the test out temporarily. Quarantined tests should be run separately and reincorporated into the main build as soon as possible. Test Automation Basics
  • 8. • JavaScript test framework running on Node.js and the browser, making asynchronous testing simple. s • Assertions - Assertions libraries like should.js and expect.js can be used. describe('Array', function(){ describe('#indexOf()', function(){ it('should return -1 when the value is not present', function(){ [1,2,3].indexOf(5).should.equal(-1); [1,2,3].indexOf(0).should.equal(-1); }) }) }) Mocha
  • 9. • Synchronous support describe('Array', function(){ describe('#indexOf()', function(){ it('should return -1 when the value is not present', function(){ [1,2,3].indexOf(5).should.equal(-1); [1,2,3].indexOf(0).should.equal(-1); }) }) }) Mocha
  • 10. • Asynchronous support describe('User', function(){ describe('#save()', function(){ it('should save without error', function(done){ var user = new User('Luna'); user.save(function(err){ if (err) throw err; done(); }); }) }) }) Mocha
  • 11. • Hooks - Before each, After each beforeEach(function(done){ db.clear(function(err){ if (err) return done(err); db.save([tobi, loki, jane], done); }); }) describe('#find()', function(){ it('respond with matching records', function(done){ db.find({ type: 'User' }, function(err, res){ if (err) return done(err); res.should.have.length(3); done(); }) }) }) }) Mocha
  • 12. • Pending tests describe('Array', function(){ describe('#indexOf()', function(){ it('should return -1 when the value is not present') }) }) Mocha
  • 13. • Reporting – Types of reporting (Spec, Progress bar, JSON, Dot, etc) – Test duration with color indicator (slow, reasonable, fast) – Report differences (actual vs expected) Mocha
  • 14. Demo
  • 15. nagarajan@Neev:~/ mocha --reporter=spec --timeout 120000 test/api_fileupload Cannot load StringPrep-0.1.0 bindings. You may need to `npm install node- stringprep` Media asset (picture) upload ✓ Start session API: should succeed on valid inputs (57ms) ✓ should upload file in parts (29032ms) Sensory data upload ✓ Start session API: should succeed on valid inputs (136ms) ✓ should upload sensory data (22176ms) 4 passing (57s) Mocha
  • 18. India - Bangalore The Estate, # 121,6th Floor, Dickenson Road Bangalore-560042 Phone :+91 80 25594416 Neev Information Technologies Pvt. Ltd. sales@neevtech.com India - Pune Office No. 4 & 5, 2nd floor, L-Square, Plot No. 8, Sanghvi Nagar, Aundh, Pune - 411007. Phone :+91 20 64103338 For more info on our offerings, visit www.neevtech.com

Notas del editor

  1. Definition of terms1. Revenue refers to total revenue Jan-Dec2. Gross margin as defined in key metric template3. Net new business refers to ‘New new business’ i.e. non organic growth. It should not include growth from existing clients.