3

Software Testing Foundation Cheat Sheet

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Software Testing Foundation Cheat Sheet
Page 2: Software Testing Foundation Cheat Sheet

SoftwareTestinghttp://www.rogeriodasilva.com/

Softwaretestingisaninvestigationconductedtoprovidestakeholderswithinformationaboutthequalityoftheproductorserviceundertest.Softwaretestingcanalsoprovideanobjective,independentviewofthesoftwaretoallowthebusinesstoappreciateandunderstandtherisksofsoftwareimplementation.Testtechniquesinclude,butarenotlimitedto,theprocessofexecutingaprogramorapplicationwiththeintentoffindingsoftwarebugs.Itinvolvestheexecutionofasoftwarecomponentorsystemcomponenttoevaluateoneormorepropertiesofinterest.Ingeneral,thesepropertiesindicatetheextenttowhichthecomponentorsystemundertest:meetstherequirementsthatguideditsdesignanddevelopment,respondscorrectlytoallkindsofinputs,performsitsfunctionswithinanacceptabletime,issufficientlyusable,canbeinstalledandruninitsintendedenvironments,andachievesthegeneralresultitsstakeholdersdesire.Asthenumberofpossibletestsforevensimplesoftwarecomponentsispracticallyinfinite,allsoftwaretestingusessomestrategytoselectteststhatarefeasiblefortheavailabletimeandresources.

Visit:http://www.rogeriodasilva.com/

FundamentalsofTestingTestingisaprocessratherthanasingleactivity.Thisprocessstartsfromtestplanningthendesigningtestcases,preparingforexecutionandevaluatingstatustillthetestclosure.So,wecandividetheactivitieswithinthefundamentaltestprocessintothefollowingbasicsteps:1)PlanningandControl2)AnalysisandDesign3)ImplementationandExecution4)EvaluatingexitcriteriaandReporting5)TestClosureactivities

TestDesignTechniquesFollowingarethetypicaldesigntechniquesinsoftwareengineering:1.Derivingtestcasesdirectlyfromarequirementspecificationorblackboxtestdesigntechnique.TheTechniquesinclude:BoundaryValueAnalysis(BVA)EquivalencePartitioning(EP)DecisionTableTestingStateTransitionDiagramsUseCaseTesting2.Derivingtestcasesdirectlyfromthestructureofacomponentorsystem:StatementCoverageBranchCoveragePathCoverageLCSAJTesting3.Derivingtestcasesbasedontester'sexperienceonsimilarsystemsortestersintuition:ErrorGuessingExploratoryTesting

ToolSupportforTestinghttp://www.rogeriodasilva.com/10-best-free-defect-tracking-tools/

TheClassificationTreeMethodisamethodfortestdesign,asitisusedindifferentareasofsoftwaredevelopment.IthasbeendevelopedbyGrimmandGrochtmannin1993.ClassificationTreesintermsoftheClassificationTreeMethodmustnotbeconfusedwithdecisiontrees.Theclassificationtreemethodconsistsoftwomajorsteps:IdentificationoftestrelevantaspectsandtheircorrespondingvaluesaswellasCombinationofdifferentclassesfromallclassificationsintotestcases.Theidentificationoftestrelevantaspectsusuallyfollowsthespecificationofthesystemundertest.Theseaspectsformtheinputandoutputdataspaceofthetestobject.Thesecondstepoftestdesignthenfollowstheprinciplesofcombinatorialtestdesign.Whilethemethodcanbeappliedusingapenandapaper,theusualwayinvolvestheusageoftheClassificationTreeEditor,asoftwaretoolimplementingtheclassificationtreemethod.

See:10BestFreeDefectTrackingToolhttp://www.rogeriodasilva.com/10-best-free-defect-tracking-tools/

Page 3: Software Testing Foundation Cheat Sheet

TestManagement-TestProcedure-Manual-TestScript-Automated

Testmanagementmostcommonlyreferstotheactivityofmanagingthecomputersoftwaretestingprocess.Atestmanagementtoolissoftwareusedtomanagetests(automatedormanual)thathavebeenpreviouslyspecifiedbyatestprocedure.Itisoftenassociatedwithautomationsoftware.

TestingThroughouttheSoftwareLifeCycleTherearevarioussoftwaredevelopmentapproachesdefinedanddesignedwhichareused/employedduringdevelopmentprocessofsoftware,theseapproachesarealsoreferredas“SoftwareDevelopmentProcessModels”(e.g.Waterfallmodel,incrementalmodel,V-model,iterativemodel,etc.).Eachprocessmodelfollowsaparticularlifecycleinordertoensuresuccessinprocessofsoftwaredevelopment.Softwarelifecyclemodelsdescribephasesofthesoftwarecycleandtheorderinwhichthosephasesareexecuted.Eachphaseproducesdeliverablesrequiredbythenextphaseinthelifecycle.Requirementsaretranslatedintodesign.Codeisproducedaccordingtothedesignwhichiscalleddevelopmentphase.Aftercodinganddevelopmentthetestingverifiesthedeliverableoftheimplementationphaseagainstrequirements.TherearefollowingsixphasesineverySoftwaredevelopmentlifecyclemodel:RequirementgatheringandanalysisDesignImplementationorcodingTestingDeploymentMaintenance

StaticTechniquesInintegratedcircuitdesign,dynamiclogicisadesignmethodologyincombinatorylogiccircuits,particularlythoseimplementedinMOStechnology.Itisdistinguishedfromtheso-calledstaticlogicbyexploitingtemporarystorageofinformationinstrayandgatecapacitances.Itwaspopularinthe1970sandhasseenarecentresurgenceinthedesignofhighspeeddigitalelectronics,particularlycomputerCPUs.Dynamiclogiccircuitsareusuallyfasterthanstaticcounterparts,andrequirelesssurfacearea,butaremoredifficulttodesign.Dynamiclogichasahighertoggleratethanstaticlogicbutthecapacitativeloadsbeingtoggledaresmallersotheoverallpowerconsumptionofdynamiclogicmaybehigherorlowerdependingonvarioustradeoffs.Whenreferringtoaparticularlogicfamily,thedynamicadjectiveusuallysufficestodistinguishthedesignmethodology,e.g.dynamicCMOSordynamicSOIdesign.Dynamiclogicisdistinguishedfromso-calledstaticlogicinthatdynamiclogicusesaclocksignalinitsimplementationofcombinationallogiccircuits.Theusualuseofaclocksignalistosynchronizetransitionsinsequentiallogiccircuits.

FreeQuizhttp://www.rogeriodasilva.com/istqb-iseb-certified-tester-foundation-level/

TakethefreeQuiz.http://www.rogeriodasilva.com/istqb-iseb-certified-tester-foundation-level/