test-strategy_第1页
test-strategy_第2页
test-strategy_第3页
test-strategy_第4页
test-strategy_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Software Testing & StrategiesInstructor: Dr. Jerry GaoSoftware Testing & StrategiesJerry Gao, Ph.D. Jan. 1999- Software Testing Fundamentals- Testing Objectives, Principles, Testability- Software Test Case Design- White-Box Testing- Cyclomatic Complexity- Graph Matrices- Control Structuring

2、Testing- Condition Testing- Data Flow Testing- Loop Testing- Black-Box Testing- Graph-based Testing Methods- Equivalence Partitioning- Boundary Value Analysis- Comparison TestingVerification and ValidationSoftware testing is one element of a broader topic that is often referred to as = Verification

3、and Validation (V&V)Verification - refers to the set of activities that ensure that software correctly implements a specific function.Validation - refers to a different set of activities that ensure that the software that has been built is traceable to customer requirements.Boehm BOE81:Verificat

4、ion: “Are we building the product right?”Validation: “Are we building the right product?”The definition of V&V encompasses many of SQA activities, includingformal technical reviews, quality and configuration auditsperformance monitoring, different types of software testingfeasibility study and s

5、imulationSoftware Testing OrganizationTesting objective:uncover the errors (defects) in the software, includingerrors in:- requirements from requirement analysis- design documented in design specifications- coding (implementation)- system resources and system environment- hardware problems and their

6、 interfaces to softwareSoftware testing can be considered to be (psychologically) destructive.Who are involving software testing?- developers - testers (test engineers) in ITG- SQA groupSoftware testing organization: - Individual tester in a development team- Independent test group (ITG)Software Tes

7、ting ProcessUnit testIntegrationtestValidationtestSystemtestSystem engineeringRequirementsSoftware DesignCode & ImplementationV&V TargetsUnit Test (Component Level Test)Unit testing: Individual components are tested independently to ensure their quality. The focus is to uncover errors in des

8、ign and implementation, including- data structure in a component- program logic and program structure in a component- component interface- functions and operations of a componentUnit testers: developers of the components.Operations and Functions with I/OWhite-boxinterfaceinputoutputInternal logic, d

9、ata, structureoutputinputinterfaceoperationBlack-boxIntegration TestIntegration test: A group of dependent components are tested together to ensure their the quality of their integration unit.The focus is to uncover errors in:- Design and construction of software architecture- Integrated functions o

10、r operations at sub-system level- Interfaces and interactions between them- Resource integration and/or environment integrationIntegration testers: either developers and/or test engineers.Component #1Operations and Functions with I/OinputinterfaceoperationComponent #2Operations and Functions with I/

11、OoutputinterfaceoperationIntegration Testing StrategiesApproaches:a) non-incremental integrationb) incremental integrationNon-incremental integration:- Big Band - combine (or integrate) all parts at once. Advantages: simpleDisadvantages:- hard to debugging, not easy to isolate errors- not easy to va

12、lidate test results- impossible to form an integrated systemIncremental integration:integrate the system step-by-step (or piece by piece)in an well-designed order. Three important methods:a) Top-downb) bottom-upc) Sandwich - uses a top-down for upper-level modulesand bottom-up for low-level modulesT

13、op-down IntegrationIdea:-Modules are integrated by moving downward through the control structure.Modules subordinate to the main control module are incorporated into the systemin either a depth-first or breadth-first manner.Integration process (five steps):1. the main control module is used as a tes

14、t driver, and the stubsare substituted for all modules directly subordinate to the maincontrol module.2. subordinate stubs are replaced one at a time with actual modules.3. tests are conducted as each module is integrated.4. On completion of each set of tests, another stub is replaced with the real

15、module.5. regression testing may conducted.Pros and cons top-down integration: - stub construction cost- major control function can be tested early.Bottom-Up IntegrationIdea:- Modules at the lowest levels are integrated at first, then by moving upward through the control structure.Integration proces

16、s (five steps):1. Low-level modules are combined into clusters that perform a specific software sub-function.2. A driver is written to coordinate test case input and output.3. Test cluster is tested.4. Drivers are removed and clusters are combined moving upward in the program structure.Pros and cons

17、 of bottom-up integration: - no stubs cost- need test drivers- no controllable system until the last stepValidation TestValidation test: The integrated software is tested based on requirements to ensure that we have a right product.The focus is to uncover errors in:- System input/output - System fun

18、ctions and information data- System interfaces with external parts- User interfaces- System behavior and performanceValidation testers:test engineers in ITG or SQA people.System (Operations &Functions & Behavior)UserinterfaceUserExternal interfacesSystem TestSystem test: The system software

19、is tested as a whole. It verifies allelements mesh properly to make sure that all systemfunctions and performance are achieved in the target environment.The focus areas are:- System functions and performance - System reliability and recoverability (recovery test)- System installation (installation t

20、est)- System behavior in the special conditions (stress and load test)- System user operations (acceptance test/alpha test)- Hardware and software integration and collaboration- Integration of external software and the systemSystem testers:test engineers in ITG or SQA people.When a system is to be m

21、arketed as a software product, a testing process calledbeta testing is often used.System TestingRecovery testing - a system test that forces the software to fail in various waysand verifies that recovery is properly performed.Security testing - to verify that protection mechanism built into a system

22、 willin fact protect it from improper penetration.Stress testing - is designed to confront programs with abnormal conditions.- quantity, frequency, or volume.Performance testing - is designed to test run-time performance of softwarewithin the context of an integrated system.Installation testing - is designed to test the installation procedure and itssupported software.Test PlanningTest planning is concerned with setting out standards for the testing process rather than describing product tests.Test plan consists of the follow

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论