7 Factors Affecting Test Estimation of Selenium Automation Project - Selenium Tutorial #32
7 Factors Affecting Test Estimation of Selenium Automation Project - Selenium Tutorial #32
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
SoftwareTestingHelp
SoftwareTestingCompleteGuide
IntegrationofSeleniumWebDriverwithCucumber
SeleniumTutorial#31
Search
50MostPopularlyAskedSeleniumInterviewQuestionsandAnswersSeleniumTutorial#33
7FactorsAffectingTestEstimationofSelenium
AutomationProjectSeleniumTutorial#32
PostedIn|SeleniumTutorials|LastUpdated:"August25,2016"
InlastcoupleofSeleniumtutorialswelearned
aboutautomationtestingusingCucumberand
Seleniumtool.Wealsodiscussedaboutintegration
ofseleniumWebDriverwithCucumber.
Inthistutorialwewilldiscussaboutdifferent
factorsaffectingeffortestimationofSelenium
automation.
Planningandestimationaretwomostimportant
aspectofasoftwaredevelopmentlifecycle.
Ipersonallyfeelthatinsoftwareindustry,thereare
nobulletproofmethodsofdoinganything.Since
everyprojectisexclusiveandhavedifferentsetsof
complexityandenvironmentalfactors,
implementingtheestimationandplanningstrategy
shouldbeacollaborativeeffortoftheindividualteamswithproperinterventionsofseniorsand
managementsupport.
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
1/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
Beforeyoubeginwithestimatinganyproject,itisimperialtounderstandeachandeveryphasethatyour
projectwillbegoingthrough,sothatyoucangiveacorrectandajustifiedestimation.
Estimationcannotonlybedoneforthemanualtestingprocess,butinthiseraofautomation,estimation
techniquesareappliedtotestautomationaswell.NowSeleniumgainingamomentumandpopularityin
themarket,Iamtryingtowriteaboutsomefactorswhichshouldbetakenintoconsiderationwhile
estimatingaSeleniumproject.
LetsStart!!
IamassumingthatwearestartingtheAutomationinitiativefromthescratchandthatwehavenoready
madeframeworkavailable.
Factorsaffectingestimationofseleniumautomation
ThevariousfactorswhicheffectandwhichyoushouldconsiderforestimationofSeleniumspecific
projectareexplainedbelow:
#1Scopeoftheproject
Scopetypicallymeansidentifyingthecorrecttestcasesforautomation.ApplyDivide&rulestrategy
toaccomplishit.Breakyourapplicationinsmallchunksormodulesandanalyzeeachofthemtocome
upwiththeappropriatetestcasesforautomation.
Thestepsinvolvedare:
1. Identifythevariousfactorswhichwillformthebasisofidentifyingthecandidatetestcases.
2. Breaktheapplicationintosmallermodules
3. Analyzeeachmoduletoidentifythecandidatetestcases
4. CalculateROI
Formoredetailsofhowtoidentifythecorrecttestcase,pleaseseemypreviouspaper:Selectionof
correcttestcasesforAutomation
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
2/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
#2Complexityoftheapplication
Stepsinvolvedhereare:
1. DeterminetheSizetheapplicationbasedonthenumberoftestcasesthatneedstobeautomated.
2. SizecomplexitythroughFibonacciseries.
3. Identifytheverificationpointandcheckpointofeachtestcase
Herewehavetoestablishthedefinitionofbig/mediumandsmallsizedapplication.Thisdefinition
differsfromanindividual/groupperspective.Howyouclassifyyourapplication,dependscanalsobe
dependentuponthenumberoftestcases.
Forexample:
Ifyourapplicationhas300500testcasestoautomate,youcanconsideritassmallsizedapplication.If
thetestcasesareover1500,itcanbeclassifiedascomplex.Thisfactorcanbedifferentfordifferent
application.Forsome,1500testcasestoautomatecanbeconsideredassmall/mediumscaled.Soonce
youhaveidentifiedtheexactnumberoftestcases,scaleittosmall/mediumorlarge.Yourstrategy
towardsestimatingtheeffortwillhugelydependentonthesecriteria.
Youhavetoalsoconsiderthedifferentcheckpointsandverificationpointsforyourtestcase.Atestcase
canhavemorethan1checkpointbutwillhaveonly1verificationpoint.Incaseyouhavemorethan1
verificationpoint,itisrecommendedtobifurcateintoseparatetestcases.Thiswillalsoeaseyour
maintenanceandenhancementofyourtestsuite.
#3Useofsupportingtools/technologies
Stepsinvolvedhereare:
1. Identifytheframeworkandautomationneeds
2. Basedontheneeds,analyzeandidentifythetoolstobeused.
3. Identifythedependencies/implicationsofusingthetool.
Seleniumaloneisnotsufficienttobuildaframeworkorcompletetheautomation.Selenium(Webdriver)
willonlyscriptthetestcase,butthereareothertasksaswell,likereportingtheresult,trackingthelogs,
takingscreenshotsetc.
Toachievetheseyouneedseparatetoolsthatwillbeintegratedwithyourframework.Soitisimportant
heretoidentifythesesupportingentitieswhichwillbestsuiteyourrequirementandwillhelptogeta
positiveROI
#4ImplementingtheFramework
HerecomesthetrickypartJthestepsinvolvedare!!
1. Identifytheinput(patterninwhichdataisfedintoscript)andoutput(reports/testresults)ofyour
automationsuite.
2. Designyourinputfiles.Thismayrangefromasimpletextfiletocomplexexcelfile.Itisbasically
thefilewhichwillhaveyourtestdata.
3. Designthefolderstructurebasedonyourinputparametersand
4. Implementthereportingfeature(eitherinsomeexcelfileorusinganytoollikeReportNG)
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
3/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
5. Determine/implementloggerinyourframework
6. Implementthebuildtoolinyourframework
7. Implementtheunittestframework(JunitorTestNG)
TherearemanyotherrequirementsapartfromjustscriptingintestautomationwithSelenium,like
readingthedatafromafile,reporting/trackingthetestresults,trackinglogs,triggerthescriptsbasedon
theinputconditionsandenvironmentetc.Soweneedastructurethatwilltakecareofallthesescripts.
ThisstructureisnothingbutyourFramework.
Webapplicationsarecomplexbynaturebecauseitinvolveslotsofsupportingtoolsandtechnologyto
implement.Inasimilarway,implementingframeworkinSeleniumisalsotricky(Iwillnotsaycomplex)
asitinvolvesothertoolstointegrate.SinceweknowSeleniumisNOTatoolbutactuallyacollection/
groupofjarfiles,itisconfiguredandnotInstalled,Seleniumitselfisnotstrongenoughtobuilda
complexframework.Itrequiresalistofthirdpartytoolsforbuildingaframework.
WehavetorememberherethatthereisnothingReadymadeinSelenium.Foreverything,wehaveto
code,soprovisionsinestimationshouldbethereforgooglingtheerrorsandtroubleshooting.
HerewehavetounderstandthatthatFrameworkbuildingisthemostimportantaspectofyour
Automationeffort.Ifyourframeworkisrocksolid,maintenanceandenhancementbecomeseasier
speciallyintheeraofAgile,ifyourframeworkisgood,youcanintegrateyourtestsinallthesprints
easily.
IwontbewrongifIsaythatthisparticularfactorofdesigningtheFrameworkshouldbethemost
importantaspectofestimation.Ifneeded(likeincomplexapplication)thisfactorshouldbeagainbroken
downintoaseparateWBSandestimationshouldbedone.
#5Learning&Training
LearningSeleniumisabitdifferentthanlearninganyotherautomationtool.Itbasicallyinvolves
learningaprogramminglanguagethanjustascriptinglanguage(thoughscriptlanguagehelpswhile
buildingaframework,likeyouwanttowriteascriptthatwouldinvokeyourautomatedscriptsafter
doingtheenvironmentsettingchanges).
IncasewearecombiningWebDriverwithjava,Iwouldsaythatifoneiswellversedwithcorejava,they
areinaverygoodshapetostartwithseleniumautomation.
Alongwithlearningjava,provisionsshouldbetheretolearnothertechnologieslikeANT/Maven(for
building),TestNG/jUnit(unittestframework),Log4J(forLogging),reporting(forreporting)etc.this
listmaygrowbasedonthelevelofframework.Themorethislistgrows,themoretimeitwouldtake.
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
4/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
Ifthemanagementhasdecidedtogowithselenium,theselearningactivitiescanbedoneparallelwith
theplanningactivity.Becausethereisnolimittolearnthesetechnologies,itissuggestedtohavea
definiteplan(syllabus)readyfortheteamsothattheycaninitiatedtheirlearningprocessinadefinite
directionandeverybodyisinthesamepage.
Practicallyspeaking,wetestersdonothaveaverymuchkeeninlearningafullfledgedprogramming
languageandwefeelthisisdeveloperspieceofcake.Butnowwehavetochangethismentalityand
shouldconsiderlearningtheprogramminglanguagetobeequallyimportantaslearningnewtesting
process.Thiswillnotonlyincreasetestersknowledgeaboutthelanguageandautomationbutalsowill
giveachancetounderstandhowtheapplicationworksinternallywhichmayincreasetheirscopetofind
newbugs.
#6Environmentsetup
Environmentsetupdealswith(notlimitedto):
Settingupthecodeinthetestenvironment
Settingupcodeinproductionenvironment
Writingscriptsfortriggeringtheautomatedtests.
Developingthelogicforreporting
Establishingthefrequencyofrunningthescriptsanddevelopinglogicforitsimplementation
Creatingtext/excelfilesforenteringthetestdataandtestcases
Creatingpropertyfilesfortrackingtheenvironmentsandcredentials
#7Coding/scriptingandreview
Beforeyouactuallystartwritingyourtests,thereare2prerequisites:
1. Candidatetestcasesshouldbehandy
2. Frameworkisready
Identifydifferentactionsthatyourwebapplicationdoes.Itcanbesimpleactionslikenavigation,
clicking,enteringtextoracomplexactionlikeconnecttodatabase,handleflashorAjax.Takeonetest
caseatatime,andidentifywhatallactionthatparticulartestcasedoesandestimatehoursaccordingly
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
5/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
forpertestcase.Thesumofallthehoursfortheentiretestsuitewillgiveyoutheexactnumber.
ProvisionshouldbethereforReviewaswell.Thereviewsaresimplethecodereviewwhichcanbedone
eitherbypeeroradeveloper.Pairprogrammingisthebestoptionwhichisquick,butifitisnotpossible,
basedontheavailableresourcesororganizationsreviewstrategy,hoursshouldbeallocatedforit.
Moredetailsabouteachfactoraffectingestimation:
Factor#1:Scope
Meaning:IdentifyingthecandidatetestcasesforautomationthroughtheROI
StepsInvolved:
1. Identifythevariousfactorswhichwillformthebasisofidentifyingthecandidatetestcases.
2. Breaktheapplicationintosmallermodules
3. Analyzeeachmoduletoidentifythecandidatetestcases
4. CalculatetheROI
Deliverable:Listoftestcasesthatneedstoautomated.
Remarks:Itisimportanttofreezeyourscopeonceyougoaheadwithotherstepsofestimation.
Factor#2:Complexity
Meaning:Establishthedefinitionofbig/mediumandsmallsizedapplication.
StepsInvolved:
1. Sizetheapplicationbasedonthenumberoftestcasesthatneedstobeautomated.
2. SizecomplexitythroughFibonacciseries.
3. Identifytheverificationpointandcheckpointofeachtestcase.
Deliverable:SizeoftheapplicationSmall,mediumorBig.
Numberoftestcasesandtheircorrespondingcheckpointandverificationpoint.
Remarks:RecommendedAtestcasecanhavemultiplecheckpointbutonly1verificationpoint.Ifa
testcasehasmorethan1verificationpoint,itshouldbebifurcatedintoaseparatetestcase.
Factor#3:Supportingtools
Meaning:Seleniumitselfisnotstrongenoughtobuildacomplexframework.Itrequiresalistofthird
partytoolsforbuildingaframework.
StepsInvolved:
1. FinalizedIDE
2. Finalizedunittesttool
3. Finalizedlogger
4. Finalizedreportingtool
5. Finalizedbuildtool
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
6/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
Deliverable:Listoftoolsneededtocreatetheframework.
Remarks:
Examples:
Eclipse/RADasIDE
Ant/MavenAsbuildtool
jUnit/TestNGasunittestframework
Log4jasLogger
ReportiNGasreportingtool
Textfilesfortrackingtheenvironments/credentials
Excelfilesfortrackingthetestdata
Perl/Pythonforsettingupenvironmentandtriggeringthetestscripts.
Factor#4:ImplementingFramework
Meaning:Creationofstructure
StepsInvolved:
1. Designyourinputfiles.
2. Designthefolderstructure
3. Determine/implementloggerinyourframework
4. Implementthebuildtoolinyourframework
5. Implementtheunittestframework
Deliverable:
FrameworkandfolderstructurecreatedintheIDE.
Excelsheetscontainingyourinputdata
Propertyfilescontainingenvironmentrelateddataandcredentials.
Remarks:Thisisthemostcrucialstep.Itisadvisabletoincludesomebuffertimewhileestimating
becausesometimetroubleshootingtakemoretimethanexpected.
Factor#5:Environmentsetup
Meaning:Dealswithcodesetupanddownloading/preparingforthecodedeployment
StepsInvolved:
1. Preparetheinputfileandreporting
2. Createthetriggeringscript
Deliverable:Environmentready
Remarks:Weshouldtrytobuildourframeworkinsuchawaythatwithleasthassle,ourcodeis
deployedintothesaidenvironment/box.
IshouldnotbewrongifIsaythatwithminimalentriesintoourtextfiles(whichhavetheurland
credentials)ourcodeshouldbereadytorunandROCK!
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
7/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
Factor#6:Learning&training
Meaning:Learningaprogramminglanguageandothersupportingtechnologies
StepsInvolved:Prepareaplanasperyourautomationneedsandshareitwiththeteamandencourage
themtolearnandproceedasperthesyllabus.
Deliverable:TrainingPlananditstrackerwhichwilltracktheprogressoftheteam.
Remarks:Emphasisshouldbeonbuildinglogicsratherlearningsyntax.
Factor#7:Coding/scriptingandReview
Meaning:Writingtheactualtestscriptsandreviewingthem
StepsInvolved:
1. Testcasesandframeworkisready.
2. Take/dividethetestcasesandconvertitintoautomatedscriptsandtrackyourprogress
Deliverable:Automatedtestscripts
Remarks:Wholeteamshouldparticipateinwritingthetestscriptsusingtheimplementedframework.
Sowhileestimating,effortsfromthewholeteamshouldbetakenintoconsideration.
Conclusion:
Havingsaidaboutallthesepoints,donotforgettoincludeManagementoverheadandsomebuffertime
inyourfinalSeleniumautomationestimation.Thebestandtheprovenwaytodoanyestimationisto
followtheWBS(WorkBreakdownStructure)mechanism.Thisisstraightforwardandservesthe
purposeofimplementingtheautomationestimationneeds.
Thefactorsmentionedabovearetheonesbasedonmyexperience,buttherecanbeotherentitiesaswell
whichmightaffectthestrategy.
ThethumbrulehereisIdentifycertaincriteria,divideyourmodulesortestcaseonthosecriteria
andscaleit.Basedonyourscaledfigureyoucancometoanaccurateestimation.
NextTutorial#33:WewillbeconcludingourmostcomprehensiveSeleniumonlinetrainingfree
tutorialsserieswithlasttutoriali.e.Seleniumtestinginterviewquestionswithanswers.
LetusknowifyouhaveanyothertipsforeffortestimationofSeleniumprojects.
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
8/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
Yes,StartSendingNewPosts
4comments
#1ChrisLuck
Goodanalysisoftestestimationfactors.DoyouhaveanysamplefortestestimationofSelenium
project?
#2Harsh
HiSir,
Pleaseaddliveprojectsforpractice.
#3Abhishek
HowthisisachievedPerl/Pythonforsettingupenvironmentandtriggeringthetestscripts.
?
#4San
Goodanalysisoftestestimationfactors.DoyouhaveanysamplefortestestimationofSelenium
project?
Pleaseaddliveprojectsforpracticewithjava
LeaveaComment
Name
Mail
Website(Optional)
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
9/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
Submit
STARTHERE!
Home
GetFREEUpdates
TestingRESOURCES
QATestingTRAINING
PremiumeBook
FREEeBooks
ALLArticles
ContactUs
WhatReadersSayAboutUs
YourFeedback!
Help&Tutorials
ISTQBStudyGuide
ISTQBPremiumStudyGuide
FreeQATraining
FreeSeleniumTraining
FreeQTPTraining
FreeQCTraining
HPLoadRunnerTutorials
JIRATutorials
101+InterviewQuestions
FollowUs!
Adv
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
10/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
Categories
AgileTesting
AutomationTesting
BasicsofSoftwaretesting
BugDefecttracking
CareerinSoftwareTesting
CookieTesting
CrowdsourcedTesting
DatabaseTesting
GameTesting
General
GUITesting
Howtobeagoodtester
HPQualityCenter
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
11/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
InstallationTesting
Interviews
ISOstandards
ISTQBCertification
LoadRunnerTutorials
ManualTesting
MobileTesting
PerformanceTesting
QAcertifications
QAforum
QAleadership
QAteamskills
QATestengineersPayscale
QTPTutorials
Qualityassurance
Questions&answers
Reviews
Securitytesting
SeleniumTutorials
Softskillsfortesters
SoftwareJobOpenings
SoftwareTestingBooks
SoftwareTestingEvents
softwaretestinglinks
SoftwareTestingResume
SoftwareTestingTemplates
SoftwareTestingTools
SoftwareTestingTraining
TestManagementTools
TestPlanTemplate
Teststrategy
TestervsDeveloper
Testingbestpractices
TestingConcepts
TestingInterviewquestions
TestingLifecycle
TestingMethodologies
TestingNews
TestingSkillImprovement
TestingTipsandresources
TestingWebServices
Typesoftesting
WebTesting
Winrunner
WriteForUs
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
12/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
Search
Aboutus|Articles|Contactus|Directory|Affiliates|Advertise|TestingServices
DownloadFreeeBook+GetBlog
Allarticlesarecopyrightedandcannotbereproducedwithoutpermission.
Updates
PrivacyPolicy|LinktoUs
20062015SoftwareTestingHelpReadourCopyrightPolicy|
YourEmail:
LatestArticles!
3WorstDefectReportingHabitsandHowtoBreakThem
TheCompleteBeginnersGuidetoResponsiveWebDesignTesting
10WorstThingsaCriticWouldSayAboutYourSoftware
TestLodgeTutorialHowtoOrganizeYourSoftwareTestingProjectsUsingTestLodge
TestManagementTool
HowDoYouDecideWhichDefectsareAcceptablefortheSoftwaretoGolive?
9WaystoQuicklyImproveYourWritingSkillsasaSoftwareTester
AppiumTutorialHowtoPerformAutomationTestingofAndroidAppsonaniOSSystem
BestOnlineTraining
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
13/14
11/29/2016
7FactorsAffectingTestEstimationofSeleniumAutomationProjectSeleniumTutorial#32
http://www.softwaretestinghelp.com/testestimationofseleniumautomationprojectseleniumtutorial32/
14/14