Sei sulla pagina 1di 14

11/29/2016

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

a Share 2 d Tweet f +1 h Pin k Share 9


NeverMissAnotherPost
Enteryouremail:

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

Potrebbero piacerti anche