Testing Web Applications SEII - Lecture 18
Computers, display devices, operating systems, browsers, network connection speeds
Differences in client-side processing speed
Sometimes minor issues
Serious issues e.g. download speed, missing plug-in, page layout
Define a set of “commonly encountered” client-side configurations
Tree structures for possible configurations
23 trang |
Chia sẻ: dntpro1256 | Lượt xem: 597 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Testing Web Applications SEII - Lecture 18, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Testing Web ApplicationsSEII-Lecture 18Dr. Muzafar KhanAssistant ProfessorDepartment of Computer ScienceCIIT, Islamabad.RecapElements of software quality assuranceStandards, reviews and audits, testing, error collection and analysis, change management, education, vendor management, security management, safety, risk managementSQA tasksGoals, attributes, metricsRequirements quality, design quality, code quality, quality control effectivenessStatistical quality assuranceSoftware reliability2Dimensions of Quality [1/2]ContentSyntactic and semanticFunctionConformance to requirementsStructureExtensibleUsabilityUser interfaceNavigabilityLinks to other pages3Dimensions of Quality [2/2]PerformanceNumber of usersCompatibilityDifferent configurationsInteroperabilityOther applicationsSecurityPotential vulnerabilities4Errors within a WebApp EnvironmentProblems at client sideDifferent environmentsWebapp configurationThree layers architectureStatic operating environment5Testing Strategy [1/2]The content model for the WebApp is reviewed to uncover errorsThe interface model is reviewed to ensure that all use cases can be accommodated.The design model for the webApp is reviewed to uncover navigation errorsThe user interface is tested to uncover errors in presentation and/or navigation mechanicsFunctional components are unit testedNavigation throughout the architecture is tested6Testing Strategy [2/2]The WebApp is implemented in a variety of different environmental configurations and is tested for compatibility with each configuration.Security tests are conducted in an attempt to exploit vulnerabilities in the WebAPP or within its environmentPerformance tests are conductedThe webApp is tested by a controlled and monitored population of end users; the results of their interaction with the system are evaluated for content and navigation errors, usability concerns, compatibility concerns, and WebApp security, reliability, and performance7Content Testing [1/2]ObjectivesSyntactic errorsSemantic errorsStructure of contentIs the information factually accurate?Is the information concise and to the point?Is the layout of the content object easy for the user to understand?Can information embedded within a content object be found easily?Have proper references been provided for all information derived from other sources?8Content Testing [2/2]Is the information presented consistent internally and consistent with information presented in other content objects?Is the content offensive, misleading, or does it open the door to litigation?Does the content infringe on existing copyrights or trademarks?Does the content contain internal links that supplement existing content? Are the links correct?Does the aesthetic style of the content conflict with the aesthetic style of the interface?9Database TestingOriginal client-side request for information is differentDatabase may be remoteTransmission of raw data to serverProper formatting of raw data acquiredTesting should ensure thatValid information is passedWebApp processes scripts accuratelyUser data are passed correctlyQueries are passed to data management layer10Layers of Interaction11Figure source: Software Engineering: A Practitioner’s Approach, R. S. Pressman, 7th ed., p. 536User Interface TestingInterface features are tested to ensure that design rules, aesthetics, and related visual content are available for the user without errorIndividual interface mechanisms are tested in a manner that is analogous to unit testingEach interface mechanism is tested within the context of a use caseThe complete interface is tested against selected use casesThe interface is tested within a variety of environments to ensure that it will be compatible 12Testing Interface Mechanisms [1/5]LinksProper content is reachedBuild a list of all linksUncover bad URLs or linksLinks to external WebAppFormsLabels correctly identify fieldsMandatory fields are visually identifiedServer receives complete informationAppropriate defaults are usedBrower functions (e.g. back arrow) do not corrupt dataScripts for error checking work properly13Testing Interface Mechanisms [2/5]FormsProper width and data typesAppropriate safeguard e.g. length of textAppropriate options for full-down menusOrder of controls is meaningfulBrowser “auto-fill” do not lead to data errorsTab key initiates proper movement14Testing Interface Mechanisms [3/5]Client-side scriptingBlack-box testingCoupled with forms testingCompatibility test for scripting languageOrganization standardsDynamic HTMLDynamic webpages are executedCompatibility test15Testing Interface Mechanisms [4/5]CGI scriptsBlack-box testing for data integrityPerformance testing for server-side configurationStreaming contentUpdated contents are properly displayedSuspended without errorRestarted without difficultyCookiesClient-side and server-side testingProper persistence16Testing Interface Mechanisms [5/5]Application specific interface mechanismsChecklist to check functionality Example: shopping cart functionalityBoundary-test: maximum and minimum number of itemsTest a “check out” request for an empty cartTest proper deletion of an itemTest to determine whether a purchase empties the cartTest to determine the persistence of cart contentsTest to determine whether cart contents be called for at some future date17Usability Tests [1/3]Define a set of usability testing categories and identify goals for eachDesign tests that will enable each goal to be evaluatedSelect participants who will conduct the testsInstrument participants' interaction with the WebApp while testing is conductedDevelop a mechanism for assessing the usability of the WebApp18Usability Tests [2/3]Different levelsSpecific interface mechanism e.g. formComplete web pageComplete WebApp19Usability Tests [3/3]Test categoriesInteractivityLayoutReadabilityAestheticsDisplay characteristicsTime sensitivityPersonalizationAccessibility20Qualitative Assessment of Usability21Figure source: Software Engineering: A Practitioner’s Approach, R. S. Pressman, 7th ed., p. 542Compatibility TestsComputers, display devices, operating systems, browsers, network connection speedsDifferences in client-side processing speedSometimes minor issuesSerious issues e.g. download speed, missing plug-in, page layoutDefine a set of “commonly encountered” client-side configurationsTree structures for possible configurations22SummaryQuality dimensionsContent, function, structure, usability, navigability, performance, compatibility, interoperability, securityTesting strategyContent testingDatabase testingUser interface testingTesting interface mechanisms, usability tests, compatibility tests23
Các file đính kèm theo tài liệu này:
- lecture_18_csc392_dr_muzafar_khan_0366_2027028.pptx