Failing test cases Passing test cases 250 200 Tests 150 100 50 A M J J A S O N D J F M A M J J A S O N D J F M A M J J A 2007 2008 2009 Month Introducing Automated Unit T esting into Open Source Projects Christopher Oezbek Freie Universität Berlin The 6th International Conference on Open Source Systems, 2010-05-30 - 2010-06-02
Study Design ◮ Goal: Explore Innovation Introduction in OSS ◮ Innovation: Automated Unit T esting via JUnit ◮ T arget Project: FreeCol ◮ Prescribed Phases: ◮ Lurk ◮ Code & Collaborate ◮ Withdraw ◮ Observe , christopher.oezbek@fu-berlin.de, Introducing Unit T esting, OSS 2010 2
Results I - Number of T ests Failing test cases Passing test cases 250 200 Tests 150 Introduction Period 100 50 A M J J A S O N D J F M A M J J A S O N D J F M A M J J A 2007 2008 2009 Month ◮ After the intervention more than 200 additional tests were created , christopher.oezbek@fu-berlin.de, Introducing Unit T esting, OSS 2010 3
Results II - Concepts ◮ The role of signaling in innovation introduction ◮ Learning behavior in OSS projects ◮ Other results: ◮ T est cases as a communication device ◮ The role of the test-masters , christopher.oezbek@fu-berlin.de, Introducing Unit T esting, OSS 2010 4
Signaling ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● Test Commits ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● Innovator ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● Communication 7 7 7 7 7 7 7 7 7 8 8 8 0 0 0 0 0 0 0 0 0 0 0 0 r y n u l g p t v c n b r p a c o e a u J u e O a e A M N D M J A S J F Date ◮ First withdrawal failed to transfer responsibility ◮ Explicit signaling can provide necessary awareness , christopher.oezbek@fu-berlin.de, Introducing Unit T esting, OSS 2010 5
Learning behavior Maintainers 15 10 5 Test Masters 15 Commits per month 10 5 Core Developers 15 10 5 Others 15 10 5 A M J J A S O N D J F M A M J J A S O N D J F M A M J J A 2007 2008 2009 Month ◮ T esting done by only a small proportion of developers ◮ Affinity to testing appears static over time , christopher.oezbek@fu-berlin.de, Introducing Unit T esting, OSS 2010 6
Summary 1. Demonstrated the feasibility of introducing an innovation 2. Presence is informally managed ⇒ signaling recommended 3. Hypothesized: Learning behavior in OSSD is limited , christopher.oezbek@fu-berlin.de, Introducing Unit T esting, OSS 2010 7
Introducing T esting into OSS Projects Thank you christopher.oezbek@fu-berlin.de , christopher.oezbek@fu-berlin.de, Introducing Unit T esting, OSS 2010 8
Backup Slides , christopher.oezbek@fu-berlin.de, Introducing Unit T esting, OSS 2010 9
Results - Coverage Business Model Server 50 Artificial Intelligence Percentage of LOC covered Other User Interface by tests per package 40 30 20 10 A M J J A S O N D J F M A M J J A S O N D J F M A M J J A 2007 2008 2009 Month , christopher.oezbek@fu-berlin.de, Introducing Unit T esting, OSS 2010 10
Recommend
More recommend