28
Engaging Open Source Community in Quality Assurance Preethi Thomas, Red Hat @preethit

Engaging open source community in Quality Assurance

Embed Size (px)

Citation preview

Page 1: Engaging open source community in Quality Assurance

EngagingOpenSourceCommunityinQualityAssurance

PreethiThomas,RedHat@preethit

Page 2: Engaging open source community in Quality Assurance

EngagetheCommunity-AchieveQuality

Flickr:opensourceway

Page 3: Engaging open source community in Quality Assurance

IsQualityFree?

Flickr:victorianevland

“Qualityisfree.It'snotagiG,butit'sfree.The'unquality'thingsarewhatcostmoney.”

PhilB.Crosby

Page 4: Engaging open source community in Quality Assurance

Flickr:59654451@N02Flickr:jp3g

Page 5: Engaging open source community in Quality Assurance

DevelopmentinClosedSourceandOpenSource

Closed Source Open Source

Scope Defined Evolving scope

Well-defined development methodology Development methodology not defined or documented

Extensive project documentation Little project documentation

Business analysts define requirements

Programmers define requirements

Measureable goals used throughout project

Few measurable goals

Formal project planning and scheduling Little project planning and scheduling

Assigned resources Assigned and volunteer contributors

Formal and structured quality assurance and testing methodology

Quality assurance and testing methodology depends on sponsorship, expertise, resources

Black-box testing as early as possible User base performs black-box testing late in the process

Page 6: Engaging open source community in Quality Assurance

WhataretheChallengesofOpenSourceQE?

release early release often

Page 7: Engaging open source community in Quality Assurance

SustainableCommunityforOpenSourceQE

• Developcoderapidly• DebugcodeeffecWvely• Buildnewfeatures

TheOnionModel

doi.ieeecomputersociety.org:s10581

Page 8: Engaging open source community in Quality Assurance

OpenSourceQualityEngineering

•  CodetoConsumermindset•  Codemodularityandpeerreview•  ConWnuousintegraWonandautomaWon•  CommunityengagementinsystemtesWng

Page 9: Engaging open source community in Quality Assurance

ExamplesofOpenSourceProjectsEngagingCommunityinQualityAssurance

Page 10: Engaging open source community in Quality Assurance

Pulp

h"p://www.pulpproject.org

Flickr.:caitlinator

Page 11: Engaging open source community in Quality Assurance

WhatisPulp?

•  Managerepositoriesofcontent•  Supportsmanycontenttypes

—  RPM,Docker,Puppet

•  Pull-throughcache•  WebapplicaWonwri]eninPython•  ReleasedunderGPLv2•  h]ps://github.com/pulp

Page 12: Engaging open source community in Quality Assurance

WhoUsesPulp

•  RedHatReleaseEngineering•  Katello/RedHatSatellite6•  RedHatEnterpriseLinuxonAmazonEC2•  Systemadministratorsdoingcontentmanagement

Page 13: Engaging open source community in Quality Assurance

WhatisTheRoleofPulpQE

•  BugreporWng

— UsesRedminebugtrackerhostedbyPlanio—  h]ps://pulp.plan.io/

•  Bugtriage— DiscussionsinIRC#pulp-devchannelonFreenode

•  BugverificaWon•  WriWngtestscases•  AutomaWngtestcases

Page 14: Engaging open source community in Quality Assurance

PulpSmash

•  TestSuiteforPulp•  GPL-licensedPythonlibrary•  ConWnuousintegraWonwithlatestPulpcommits•  Anyonecancontributetotestsuiteandexecutetests•  h]ps://github.com/PulpQE/pulp-smash•  h]p://pulp-smash.readthedocs.io/en/latest/index.html

Pixabay:hammer-holding-labor-worker

Page 15: Engaging open source community in Quality Assurance

HowtoContributetoPulp&PulpSmash

•  WritePulpSmashtestcases•  ExecutePulpSmashtests•  Reportbugs•  Automatetestcases•  UpdatedocumentaWon•  h]ps://github.com/pulp/pulpproject.org

Page 16: Engaging open source community in Quality Assurance

FedoraQA

Page 17: Engaging open source community in Quality Assurance

CommunityTestDays

•  WhatareTestDays?

—  TestspecificcomponentinanupcomingFedorarelease—  Testcompletedorindevelopmentchange

•  WhenareTestDays?—  Chosenbyorganizers—  BetweenAlphaandGeneralAvailability

•  WhereareTestDaysheld?—  DiscussionsinIRC#fedora-test-daychannelonFreenode

Page 18: Engaging open source community in Quality Assurance

HosMngYourOwnTestDay

•  Decidethefeatureyouwanttotest—  Choosethetargetorchangefeature—  Talkwithleaddevelopersand/orpackagers

•  Setthedate—  Involvedpeopleareavailable—  Featureclosetocomplete—  NoconflicWngevents

•  CreateaWcketorganizingyourFedoraTestDay—  TicketscanbecreatedontheFedoraQATrac—  Followthenamingformat

Page 19: Engaging open source community in Quality Assurance

HosMngYourOwnTestDay(ConMnued)

•  CreateWikipage—  Makesureit’scomplete—  Usethetemplate—  Createtestcases—  SetuptheTestdayApp

–  Simpleweb-applicaWon–  Easiersubmissionsoftestdays'results

•  Getpeopleonboard—  MakesureallinvolvedparWesareaware—  Inviteexperiencedusers—  Promoteonblogsandsocialmedia

•  Buildliveimage— Livebootrecommended

Page 20: Engaging open source community in Quality Assurance

AnExampleofaTestDayWikiPage

fedoraproject.org/wiki/Test_Day:2016-05-16_WorkstaWon_Graphical_Upgrade?rd=Test_Day:Current

Page 21: Engaging open source community in Quality Assurance

AnExampleofaTestDayWikiPage

fedoraproject.org/wiki/Test_Day:2016-05-16_WorkstaWon_Graphical_Upgrade?rd=Test_Day:Current

Page 22: Engaging open source community in Quality Assurance

AnExampleofaTestDayApplicaMonPage

testdays.fedorainfracloud.org/events/8

Page 23: Engaging open source community in Quality Assurance

Foreman

Flickr:dollymixtures

Page 24: Engaging open source community in Quality Assurance

CommunityBugDay

•  Triageopenbugs— VerifyifreportedissuessWllexist— Closestaleorduplicatebugs— Submitpullrequestswithfixesforeasybugs

— PrioriWzefixingremainingbugs

— IdenWfynewfeaturesneeded

theforeman.org

Page 25: Engaging open source community in Quality Assurance

QualityMaSers,CommunityMaSers

Flickr:opensourceway

Page 26: Engaging open source community in Quality Assurance

Flickr:vampiress144Flickr:marquisderad

Anyone Can Contribute to Open Source!

•  Givingbacktothesociety•  ParWcipaWnginanywayandanyWmeyoucan•  CollaboraWngandinnovaWngwithpeoplearoundtheworld•  Freedomandfun

Page 27: Engaging open source community in Quality Assurance

DocumentaMon

•  h]p://pulpproject.org/docs/•  h]p://pulp-smash.readthedocs.io/en/latest/about.html#contribuWng•  h]ps://fedoraproject.org/wiki/QA/Test_Days•  h]ps://fedoraproject.org/wiki/QA/SOP_Test_Day_management•  h]ps://groups.google.com/forum/#!searchin/foreman-users/bug$20day%7Csort:relevance/

foreman-users/WVLNY3Cq7VA/BxGqwTM_BAAJ•  h]p://www.idi.ntnu.no/grupper/su/bibliography/pdf/OpenSource/Aberdour2007sw.pdf

Page 28: Engaging open source community in Quality Assurance

QuesMons?

PreethiThomas

[email protected]@preethit