SlideShare uma empresa Scribd logo
1 de 42
Test Confessions: What Eclipsers
   think and do about Testing

   Michaela Greiler and Arie van Deursen
      Delft University of Technology
A Study to identify…

     …what Eclipsers think and do about …




            Testing
When it comes to testing…
           When and why do you adopt a given
                    testing approach?
 How are you going                    How do you test
  to test your GUI?                 different versions?

How do you test the                        When do you
  integration of                          need integration
 multiple plug-ins?                            tests?
Today’s Objectives

•   See test practices in Eclipse
•   Understand test adoption criteria
•   Derive actionable items
•   Foster an open discussion on testing
•   Learning from each other
Study
• Goal: to get a deep understanding of the
  testing practices and the testing culture within
  the Eclipse community.

• Interviews with 25 experienced developers or
  testers representing well-known open and
  closed source projects.

• Design followed Grounded Theory.
Grounded Theory
Systematic procedure to discover theory from (qualitative) data




  S. Adolph, W. Hall, Ph. Kruchten. Using Grounded theory to study the experience of software development.
                                     Empirical Software Engineering, 2011.
              B. Glaser and J. Holton. Remodeling grounded theory. Forum Qualitative Res., 2004.
Grounded Theory
Analysis of
  – More than 200 testing articles specific 4 Eclipse
  – Participation & Analysis of @Eclipse events
  – Interviews with 25 experienced professionals
  – More than 30 hours
  – EMF, SOA Platform, xText, Mylyn, Usus, EclEmma,
    GMF, CDO, IMP, Jubula…
Theory


      Category            Emerging Theory

       Concept

        Code
                          Constant Comparison

      Incident
(Interviews, articles…)
Requirements
                                                    System Test
     Analysis

          High Level                          Integration
           Design                                 Test

                  Detail                    Unit
                  Design                    Test


                           Implementation




Test Scope: collection of components to be verified
Tendency: No Separate Test
          Teams
Focus on Unit Testing
Integration
    Tests
Integration & System Testing
“Try to get to a level that you write unit tests,
             always, whenever you can.“

“And write your code in such a way that the structure
   and the classes can be tested with unit tests.”


 “And then, at max. you use one integration or PDE
              tests to probe the code.”


“Ultimately, unit test are our best friends, and
  everything else is already difficult.” –P14
Who does automated unit testing?
Who does automated integration testing?
Who does automated cross-feature
      integration testing?
Who does automated testing for different
      Eclipse platform versions?
Who does automated combinatorial testing
     for OS, versions and plug-ins?
Testing Plug-in Integration

Cross-Plug-In Integration?


                         Combinatorial Testing?


           Versioning?
Minimal Automated
Integration & System Testing

       Why?
• Technical Prerequisites
                   • Integration in Daily
Test Methodology     Practice
 Adoption Model    • Application Knowledge
                   • Ownership
Test Adoption Model
explains               explains


 Used             Unused
  Test              Test
Practices         Practices
Technical Prerequisites

• Technical Knowledge
  Ready available knowledge, existence of
  books, blogs, training, events…
• Application Testability
  Mocking, models, devices, code coupling,
  working with frameworks…
• Tooling & Test Infrastructure
  Set-up test environment, tool maturity,
  usability…
Integration in Daily Practice
• Test Execution Time
  Need of human involvement, duration of test
  execution, interruption of other tasks…
• Test Design Time
  Availability of time, duration of test design,
  integration in daily tasks…
• Perception of Importance
  Recognizable benefits, attitude…
• Motivation
  Clarity of responsibilities, identification with
  responsibility…
Application Knowledge
• Design Documents
  Developer-centered activity, how formal,
  detail level…
• End User Requirements
  Well-known, clear end user requirements,
  where do you get them from, determinable
  from one plug-in….
Ownership

• Controllability
  Eclipse platform code, control over code
  evolution, influence on other plug-ins…
• Responsibility
  Overall quality, feel responsible, support
  scenarios/use cases…
Automated
                          Automated
                                          Integration &
                          Unit Testing
                                         System Testing
Technical Prerequisites                               Goal
Technical Knowledge                                   Available

Application Testability                               Manageable
Tooling & Test
Infrastructure                                        Usable


Integration in Daily Practice
Test Execution Time                                   Short

Test Design Time                                      Available
Importance                                            High
Motivation
                                                      High

Application Knowledge
Design Documents                                      Existing
End User
Requirements                                          Known


Ownership
Controllability                                       High
Responsibility                                        High
Compensation Strategy
Manual
Testing?
“These tests that I do are very simple manual tests,
 the real tests are coming from the users, that are
  doing all kind of different things with *x+.“—P9
But, how to involve the users?
Prerequisite for User Involvement
                            Openness


  Open Communication    Release Management        Extensibility




      Feedback            Manual Testing       Automated Testing




Application Knowledge   Alpha & Beta Tester   Downstream Projects
                                                & Release Train
User                   Developer
Community                                                        Community
                          Plug-In Characteristic


              Open Communication
                                             Extensibility
              Release Management
 Openness                                                         Openness



                     Manual                    Automated
              Integration & System        Integration & System
    Test             Testing                     Testing             Test
Involvement                                                      Involvement
Implications: Actionable Items

•   For individuals
•   For teams
•   For tool developers
•   For organizations
•   For the Eclipse community
•   For the research community
How can the IDE support integration testing?
Product
                                Solution

What should the process of the tool user look like?
How to leverage and organize user involvement?
Which technology can support user involvement?
Discussion:
     Building a Testing Community?
• What should the process of the tool user look
  like?
• What should the process of the tool user look
  like?
• How to leverage and organize user
  involvement?
• Which technology can support community
  involvement?
Your Opinion!
1. Participate @Survey
  www.surveymonkey.com/s/EclipseStudy

2. Come and discuss @BOF
  “Testing with, at and for Eclipse”- Wednesday, 20:30, Alameda


  Make a chance to win a solar car

Mais conteúdo relacionado

Mais procurados

IS3242 Case Presentation
IS3242 Case PresentationIS3242 Case Presentation
IS3242 Case PresentationJ M
 
Test Driven Development (C#)
Test Driven Development (C#)Test Driven Development (C#)
Test Driven Development (C#)Alan Dean
 
Getting started with Test Driven Development
Getting started with Test Driven DevelopmentGetting started with Test Driven Development
Getting started with Test Driven DevelopmentFerdous Mahmud Shaon
 
Design for Testability: A Tutorial for Devs and Testers
Design for Testability: A Tutorial for Devs and TestersDesign for Testability: A Tutorial for Devs and Testers
Design for Testability: A Tutorial for Devs and TestersTechWell
 
Acceptance Testing Driven Development, TDD
Acceptance Testing Driven Development, TDDAcceptance Testing Driven Development, TDD
Acceptance Testing Driven Development, TDDLaurent PY
 
Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.Mohamed Taman
 
Open Source tools in Continuous Integration environment (case study for agil...
Open Source tools in Continuous Integration environment  (case study for agil...Open Source tools in Continuous Integration environment  (case study for agil...
Open Source tools in Continuous Integration environment (case study for agil...suwalki24.pl
 
Fundamentals of testing 1
Fundamentals of testing 1Fundamentals of testing 1
Fundamentals of testing 1Hoang Nguyen
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentalssunilabj
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven DevelopmentDhaval Dalal
 
Test-Driven Development In Action
Test-Driven Development In ActionTest-Driven Development In Action
Test-Driven Development In ActionJon Kruger
 
Fundamentals of Testing 2
Fundamentals of Testing 2Fundamentals of Testing 2
Fundamentals of Testing 2Hoang Nguyen
 
2016 10-04: tdd++: tdd made easier
2016 10-04: tdd++: tdd made easier2016 10-04: tdd++: tdd made easier
2016 10-04: tdd++: tdd made easierChristian Hujer
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven DevelopmentMireia Sangalo
 
Common Challenges & Best Practices for TDD on iOS
Common Challenges & Best Practices for TDD on iOSCommon Challenges & Best Practices for TDD on iOS
Common Challenges & Best Practices for TDD on iOSDerek Lee Boire
 
Seminar on Software Testing
Seminar on Software TestingSeminar on Software Testing
Seminar on Software TestingBeat Fluri
 

Mais procurados (20)

IS3242 Case Presentation
IS3242 Case PresentationIS3242 Case Presentation
IS3242 Case Presentation
 
Test Driven Development (C#)
Test Driven Development (C#)Test Driven Development (C#)
Test Driven Development (C#)
 
Getting started with Test Driven Development
Getting started with Test Driven DevelopmentGetting started with Test Driven Development
Getting started with Test Driven Development
 
Design for Testability: A Tutorial for Devs and Testers
Design for Testability: A Tutorial for Devs and TestersDesign for Testability: A Tutorial for Devs and Testers
Design for Testability: A Tutorial for Devs and Testers
 
Acceptance Testing Driven Development, TDD
Acceptance Testing Driven Development, TDDAcceptance Testing Driven Development, TDD
Acceptance Testing Driven Development, TDD
 
Test plan
Test planTest plan
Test plan
 
Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.
 
Tdd dev session
Tdd dev sessionTdd dev session
Tdd dev session
 
Open Source tools in Continuous Integration environment (case study for agil...
Open Source tools in Continuous Integration environment  (case study for agil...Open Source tools in Continuous Integration environment  (case study for agil...
Open Source tools in Continuous Integration environment (case study for agil...
 
Fundamentals of testing 1
Fundamentals of testing 1Fundamentals of testing 1
Fundamentals of testing 1
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Prvt file test
Prvt file testPrvt file test
Prvt file test
 
Check upload1
Check upload1Check upload1
Check upload1
 
Test-Driven Development In Action
Test-Driven Development In ActionTest-Driven Development In Action
Test-Driven Development In Action
 
Fundamentals of Testing 2
Fundamentals of Testing 2Fundamentals of Testing 2
Fundamentals of Testing 2
 
2016 10-04: tdd++: tdd made easier
2016 10-04: tdd++: tdd made easier2016 10-04: tdd++: tdd made easier
2016 10-04: tdd++: tdd made easier
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Common Challenges & Best Practices for TDD on iOS
Common Challenges & Best Practices for TDD on iOSCommon Challenges & Best Practices for TDD on iOS
Common Challenges & Best Practices for TDD on iOS
 
Seminar on Software Testing
Seminar on Software TestingSeminar on Software Testing
Seminar on Software Testing
 

Semelhante a What Eclipsers Think and Do About Testing

5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test AutomationSauce Labs
 
Frank's Learning Summary - Evolution of agile testing
Frank's Learning Summary - Evolution of agile testingFrank's Learning Summary - Evolution of agile testing
Frank's Learning Summary - Evolution of agile testingFrank Lee
 
Essential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile AdoptionEssential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile AdoptionSteven Mak
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Kari Kakkonen
 
How to make Automation an asset for Organization
How to make Automation an asset for OrganizationHow to make Automation an asset for Organization
How to make Automation an asset for Organizationanuvip
 
How google-tests-software
How google-tests-softwareHow google-tests-software
How google-tests-softwareBhawna Tuteja
 
Session on Testing Activities in Continuous Integration and Delivery as an Ex...
Session on Testing Activities in Continuous Integration and Delivery as an Ex...Session on Testing Activities in Continuous Integration and Delivery as an Ex...
Session on Testing Activities in Continuous Integration and Delivery as an Ex...Agile Testing Alliance
 
Open.source.innovation.20070624
Open.source.innovation.20070624Open.source.innovation.20070624
Open.source.innovation.20070624Vu Hung Nguyen
 
Software Testing Tools Training
Software Testing Tools TrainingSoftware Testing Tools Training
Software Testing Tools TrainingQEdge Tech
 
Understanding Eclipse Plug-in Test Suites @ The Eclipse Testing Day 2011
Understanding Eclipse Plug-in Test Suites @ The Eclipse Testing Day 2011Understanding Eclipse Plug-in Test Suites @ The Eclipse Testing Day 2011
Understanding Eclipse Plug-in Test Suites @ The Eclipse Testing Day 2011Michaela Greiler
 
Leveraging HP Performance Center
Leveraging HP Performance CenterLeveraging HP Performance Center
Leveraging HP Performance CenterMartin Spier
 
Interact2011 - Designing Inter-usable Systems
Interact2011 - Designing Inter-usable SystemsInteract2011 - Designing Inter-usable Systems
Interact2011 - Designing Inter-usable SystemsVille Antila
 
Testing activities in continuous integration and continuous delivery as an ex...
Testing activities in continuous integration and continuous delivery as an ex...Testing activities in continuous integration and continuous delivery as an ex...
Testing activities in continuous integration and continuous delivery as an ex...Srinivas Kadiyala
 
Testing activities in CI/CD as exploratory tester
Testing activities in CI/CD as exploratory testerTesting activities in CI/CD as exploratory tester
Testing activities in CI/CD as exploratory testerSrinivas Kadiyala
 
How to Clean Up Your Continuous Testing Suites for Web & Mobile
How to Clean Up Your Continuous Testing Suites for Web & MobileHow to Clean Up Your Continuous Testing Suites for Web & Mobile
How to Clean Up Your Continuous Testing Suites for Web & MobilePerfecto by Perforce
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software TestingMohammed Moishin
 

Semelhante a What Eclipsers Think and Do About Testing (20)

5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation
 
Frank's Learning Summary - Evolution of agile testing
Frank's Learning Summary - Evolution of agile testingFrank's Learning Summary - Evolution of agile testing
Frank's Learning Summary - Evolution of agile testing
 
Essential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile AdoptionEssential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile Adoption
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Testing Best Practices
Testing Best PracticesTesting Best Practices
Testing Best Practices
 
Agile testing
Agile testingAgile testing
Agile testing
 
How to make Automation an asset for Organization
How to make Automation an asset for OrganizationHow to make Automation an asset for Organization
How to make Automation an asset for Organization
 
How google-tests-software
How google-tests-softwareHow google-tests-software
How google-tests-software
 
Session on Testing Activities in Continuous Integration and Delivery as an Ex...
Session on Testing Activities in Continuous Integration and Delivery as an Ex...Session on Testing Activities in Continuous Integration and Delivery as an Ex...
Session on Testing Activities in Continuous Integration and Delivery as an Ex...
 
Open.source.innovation.20070624
Open.source.innovation.20070624Open.source.innovation.20070624
Open.source.innovation.20070624
 
Software Testing Tools Training
Software Testing Tools TrainingSoftware Testing Tools Training
Software Testing Tools Training
 
Understanding Eclipse Plug-in Test Suites @ The Eclipse Testing Day 2011
Understanding Eclipse Plug-in Test Suites @ The Eclipse Testing Day 2011Understanding Eclipse Plug-in Test Suites @ The Eclipse Testing Day 2011
Understanding Eclipse Plug-in Test Suites @ The Eclipse Testing Day 2011
 
Leveraging HP Performance Center
Leveraging HP Performance CenterLeveraging HP Performance Center
Leveraging HP Performance Center
 
Agile testing
Agile testingAgile testing
Agile testing
 
Interact2011 - Designing Inter-usable Systems
Interact2011 - Designing Inter-usable SystemsInteract2011 - Designing Inter-usable Systems
Interact2011 - Designing Inter-usable Systems
 
Testing activities in continuous integration and continuous delivery as an ex...
Testing activities in continuous integration and continuous delivery as an ex...Testing activities in continuous integration and continuous delivery as an ex...
Testing activities in continuous integration and continuous delivery as an ex...
 
Testing activities in CI/CD as exploratory tester
Testing activities in CI/CD as exploratory testerTesting activities in CI/CD as exploratory tester
Testing activities in CI/CD as exploratory tester
 
How to Clean Up Your Continuous Testing Suites for Web & Mobile
How to Clean Up Your Continuous Testing Suites for Web & MobileHow to Clean Up Your Continuous Testing Suites for Web & Mobile
How to Clean Up Your Continuous Testing Suites for Web & Mobile
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software Testing
 

Último

Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 

Último (20)

Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 

What Eclipsers Think and Do About Testing

  • 1. Test Confessions: What Eclipsers think and do about Testing Michaela Greiler and Arie van Deursen Delft University of Technology
  • 2. A Study to identify… …what Eclipsers think and do about … Testing
  • 3. When it comes to testing… When and why do you adopt a given testing approach? How are you going How do you test to test your GUI? different versions? How do you test the When do you integration of need integration multiple plug-ins? tests?
  • 4. Today’s Objectives • See test practices in Eclipse • Understand test adoption criteria • Derive actionable items • Foster an open discussion on testing • Learning from each other
  • 5. Study • Goal: to get a deep understanding of the testing practices and the testing culture within the Eclipse community. • Interviews with 25 experienced developers or testers representing well-known open and closed source projects. • Design followed Grounded Theory.
  • 6. Grounded Theory Systematic procedure to discover theory from (qualitative) data S. Adolph, W. Hall, Ph. Kruchten. Using Grounded theory to study the experience of software development. Empirical Software Engineering, 2011. B. Glaser and J. Holton. Remodeling grounded theory. Forum Qualitative Res., 2004.
  • 7. Grounded Theory Analysis of – More than 200 testing articles specific 4 Eclipse – Participation & Analysis of @Eclipse events – Interviews with 25 experienced professionals – More than 30 hours – EMF, SOA Platform, xText, Mylyn, Usus, EclEmma, GMF, CDO, IMP, Jubula…
  • 8. Theory Category Emerging Theory Concept Code Constant Comparison Incident (Interviews, articles…)
  • 9. Requirements System Test Analysis High Level Integration Design Test Detail Unit Design Test Implementation Test Scope: collection of components to be verified
  • 10.
  • 11. Tendency: No Separate Test Teams
  • 12. Focus on Unit Testing
  • 13. Integration Tests
  • 15. “Try to get to a level that you write unit tests, always, whenever you can.“ “And write your code in such a way that the structure and the classes can be tested with unit tests.” “And then, at max. you use one integration or PDE tests to probe the code.” “Ultimately, unit test are our best friends, and everything else is already difficult.” –P14
  • 16. Who does automated unit testing?
  • 17. Who does automated integration testing?
  • 18. Who does automated cross-feature integration testing?
  • 19. Who does automated testing for different Eclipse platform versions?
  • 20. Who does automated combinatorial testing for OS, versions and plug-ins?
  • 21. Testing Plug-in Integration Cross-Plug-In Integration? Combinatorial Testing? Versioning?
  • 22. Minimal Automated Integration & System Testing Why?
  • 23. • Technical Prerequisites • Integration in Daily Test Methodology Practice Adoption Model • Application Knowledge • Ownership
  • 24. Test Adoption Model explains explains Used Unused Test Test Practices Practices
  • 25. Technical Prerequisites • Technical Knowledge Ready available knowledge, existence of books, blogs, training, events… • Application Testability Mocking, models, devices, code coupling, working with frameworks… • Tooling & Test Infrastructure Set-up test environment, tool maturity, usability…
  • 26. Integration in Daily Practice • Test Execution Time Need of human involvement, duration of test execution, interruption of other tasks… • Test Design Time Availability of time, duration of test design, integration in daily tasks… • Perception of Importance Recognizable benefits, attitude… • Motivation Clarity of responsibilities, identification with responsibility…
  • 27. Application Knowledge • Design Documents Developer-centered activity, how formal, detail level… • End User Requirements Well-known, clear end user requirements, where do you get them from, determinable from one plug-in….
  • 28. Ownership • Controllability Eclipse platform code, control over code evolution, influence on other plug-ins… • Responsibility Overall quality, feel responsible, support scenarios/use cases…
  • 29. Automated Automated Integration & Unit Testing System Testing Technical Prerequisites Goal Technical Knowledge Available Application Testability Manageable Tooling & Test Infrastructure Usable Integration in Daily Practice Test Execution Time Short Test Design Time Available Importance High Motivation High Application Knowledge Design Documents Existing End User Requirements Known Ownership Controllability High Responsibility High
  • 32. “These tests that I do are very simple manual tests, the real tests are coming from the users, that are doing all kind of different things with *x+.“—P9
  • 33. But, how to involve the users?
  • 34. Prerequisite for User Involvement Openness Open Communication Release Management Extensibility Feedback Manual Testing Automated Testing Application Knowledge Alpha & Beta Tester Downstream Projects & Release Train
  • 35. User Developer Community Community Plug-In Characteristic Open Communication Extensibility Release Management Openness Openness Manual Automated Integration & System Integration & System Test Testing Testing Test Involvement Involvement
  • 36. Implications: Actionable Items • For individuals • For teams • For tool developers • For organizations • For the Eclipse community • For the research community
  • 37. How can the IDE support integration testing?
  • 38. Product Solution What should the process of the tool user look like?
  • 39. How to leverage and organize user involvement?
  • 40. Which technology can support user involvement?
  • 41. Discussion: Building a Testing Community? • What should the process of the tool user look like? • What should the process of the tool user look like? • How to leverage and organize user involvement? • Which technology can support community involvement?
  • 42. Your Opinion! 1. Participate @Survey www.surveymonkey.com/s/EclipseStudy 2. Come and discuss @BOF “Testing with, at and for Eclipse”- Wednesday, 20:30, Alameda Make a chance to win a solar car