9. âThe number one reason people give us
for not upgrading to the latest version of
WordPress is fear that their plugins
wonât be compatible.â
[WordPress]
9
10. âThanks, but I think we have given up on
Eclipse and Bugzilla integration.â
[Eclipse â Bug ID: 268207]
10
12. How are plug-in specific
Which test practices are
integration issues
prevalent in testing of
(i.e. versioning, configurations)
plug-in-based systems?
tested?
Practices? Plug-in Testing?
What are challenges
experienced when testing
plug-in based systems?
Challenges?
Research Questions 12
13. Survey of existing approaches â over 200 resources
LITERATURE STUDY?
13
14. A Grounded Theory Study
Systematic procedure to discover a
theory from (qualitative) data
14
21. Focus on Unit Testing
Focus on Unit Testing
âUnit testing is where âUltimately, unit test are our
you find the most bugsâ best friendsâ
P18
P14
âAt least 70% of our test effort is
spent on unit testing.â
21
23. Other forms of testing are less popular
âWe think that with a high âQF-tests [were] too rigid when
test coverage through unit the system was evolvingâ
tests, integration tests are
not necessary.â
P20
P14
23
24. 1. Finding: (Automated) unit testing is widely adopted;
Integration, system, UI and acceptance testing are much
less automated
SURVEY
24
27. Cross plug-in testing is optional
âWe handle problems between several plug-ins in a bug-
driven wayâ
P18
P19
âWe have no automated tests for cross plug-in testing,
but we do manual testing.â
27
28. Version testing is minimal
âA lot of people put version ranges [âŠ], and they say they can
run with 3.3 up to version 4.0 [âŠ].â
P13
âBut Iâm willing to bet that 99% of the people
do not test that their stuff works.â
28
29. Testing combinations or versions?
43% donât test integration of different products
only 3% test this thoroughly
55% donât test for platform versions
only 4% test this thoroughly
63% donât test for dependency versions
only 10% test this thoroughly
29
31. Testing not needed?
âSimply fetch the latest and you'll end
up in a mess!â
[Ian Bull on updating problems with
plug-in systems]
31
32. Versioning, cross-plug-in testing not
needed?
âSometimes we update, but there is always the
risk that it will break something and then you
have to do extensive [manual] testing.â
P9
P12
âI do not even have a chance to test [all possible
combinations]. There are too many operating
systems, there are too many Eclipse versions.â
32
35. Findings: Barriers
âą Responsibility for integration unclear
âą Lack of ownership
âą Insufficient plug-in testing knowledge
âą Test execution too long
35
38. Manual Testing
â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
38
39. âTesting is done by the user-community
and they are rigorous about it. We have
more than 10,000 installations per month.
If there is a bug it gets reported
P12
immediately.â
39
40. Developer Involvement
âWeâre a framework. If the user downloads a
new version and lets his application run with it,
then this is already like a test.â
P20
P11
âPerhaps it is not our own product, but our
product relies on this other product. So it is normal
to improve [it].â
40
42. Summary: Findings
1. (Automated) unit testing is widely adopted;
Integration, system, UI and acceptance
testing are much less automated
2. The plug-in nature has little direct impact on
test practices
3. Barriers to adopt techniques include unclear
ownership, responsibilities, and test effort &
execution time
4. Limited integration testing is compensated
by community
42
43. Plug-in specific testing support
Provide a test modus
Rewarding community
Centralized compatibility information
43
44. More Details?
Michaela Greiler, Arie van Deursen &
Margaret-Anne Storey.
âTest Confessions: A Study of Testing
Practices for Plug-in Systemsâ
Contact:
m.s.greiler@tudelft.nl
arie.vandeursen@tudelft.nl
mstorey@uvic.ca
44