DOC PREVIEW
USC CSCI 599 - Week8_1

This preview shows page 1-2-21-22 out of 22 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 22 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 22 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 22 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 22 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 22 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Testing: A Roadmap Mary Jean Harrold College Of Computing Georgia Institute Of TechnologyIntroductionSlide 3Slide 4Slide 5Slide 6Slide 7RoadmapTesting Component Based SystemsTesting Based On Precode ArtifactsTesting Evolving SoftwareDemonstrating effectiveness of Testing TechniquesEstablishing Effective Process for TestingEstablishing Effective Process for Testing. Cont’dUsing Testing ArtifactsUsing Testing Artifacts. Cont’d…Other Testing TechniquesMethod and ToolsMethod and Tools. Cont’d ….Empirical StudiesTesting ResourcesConclusionsTesting: A RoadmapMary Jean HarroldCollege Of ComputingGeorgia Institute Of TechnologyPresented ByPrashanth LAnmol N MIntroduction•Definition•Purposes for which testing is performed•Key Concepts•Advantages•DisadvantagesIntroduction•Definition–Software testing is any activity aimed at evaluating an attribute or capability of a program or system and determining that it meets its required results. –Constitutes more than 50% of cost of software developmentIntroductionPurposes•To improve quality •For Verification & Validation (V&V) –Functionality (Exterior Quality)-Correctness ,Reliability Usability Integrity–Engineering (interior quality)-Efficiency ,Testability Documentation Structure– Adaptability (future quality )-Flexibility Reusability Maintainability•For reliability estimationIntroductionKey Concepts•Taxonomy–correctness testing–performance testing–reliability testing–security testing•Testing Automation•When to Stop Testing?Introduction•Correctness Testing- –Minimum Requirements of Software.–can be either black box or white box Black Box - treats s/w as blackbox.only the inputs/outputs visible basic functionality testing. White Box-structure & flow of software under test visible.•Performance Testing-Design problems in software that cause the system performance to degrade•Reliability Testing-robustness of a software component is the degree to which it can function correctly in the presence of exceptional inputs or stressful environmental conditionsSecurity Testing-include identifying and removing software flaws that may potentially lead to security violations, and validating the effectiveness of security measures. Simulated security attacks can be performed to find vulnerabilitiesIntroduction•Testing Automation– Automation is a good way to cut down time and cost. – Software testing tools and techniques usually suffer from a lack of generic applicability and scalability.•When to Stop Testing?–Testing is a trade-off between budget, time and quality. –It is driven by profit models.–pessimistic time, budget, or test cases -- are exhausted.–optimistic reliability meets the requirement, or the benefit from continuing testing cannot justify the testing cost.•Advantages–Easy generation of test cases & Instrumentation of software.–Process automation & execution in expected environment.RoadmapFundamental Research– Testing Component Based Systems – Testing Based on Precode Artifacts– Testing Evolving Software– Demonstrating Effectiveness of Testing Techniques– Using Testing Artifacts– Other Testing Techniques– Methods & Tools– Empirical Studies– Testing ResourcesTesting Component Based Systems•Issues – Component Provider (Developer of the Components)Views Components independently of the context.– Component User (Application Developer) Views Components relevant to the application.•Limiting Factor–Availability of Source Code•Roadmap Suggested–Types of Testing Information needed.–Techniques for representing & computing the types of testing info the user needs.–Techniques to use the information provided with the component for testing the application.Testing Based On Precode Artifacts•Issues – Design– Requirements– Architectural Specifications•Issue Under Spotlight– Architecture•Roadmap Suggested– Use of formal notations used for s/w architecture – Develop techniques to be used with architectural specification for test-case development.– Develop techniques to evaluate s/w architectures for testability.Testing Evolving Software•Regression testing:Validate modified software to ensure no new errors introduced. ONE OF THE MOST EXPENSIVE PART !!!•Some useful techniques* select subset of test suite of previous from previous testing. * techniques to help manage growth in size of test suite.* assess regression testability.•Testing techniques needed ….* not only for software but also for architecture and requirements.* manage test suites themselves.* identify parts of modified software for which new test cases are required.* identify test cases no longer needed.* prioritize test cases.* asses the test suite themselves.Demonstrating effectiveness of Testing Techniques•How ????* Increase developers confidence.* software behavior* identify classes of faults for a given test criteria.* provide visual interface.* determine interaction among test selection criteria and ways to combine.•Research been done In ….* evaluation criteria to determine adequacy of test suites and test cases that inspire confidence.* test cases based on either software’s intended behavior or purely on code.* test cases based on data-flow in a program.* use existing testing techniques to test visual programming languages.* test complex Boolean expressions.* mutation analysis and approximation ( ex: can avoid testing pointer variable in data flow analysis.Establishing Effective Process for Testing•Need to develop process for planning and implementation of Testing.•Some of the currently used or proposed techniques ….* Develop a test plan during requirements gathering phase and implementation of the test plan after s/w implementation phase. Useful ?* what does Microsoft do ?- frequently synchronize what people are doing.- periodically stabilize the product in increments as project proceeds.- build and test a version every night !!! ( only Microsoft can do…!)* perpetual testing - Build foundation for treating analysis and test ongoing activities for improved quality.* selective regression testing where we test one version and gather testing artifacts such as I/o pairs and coverage information.* explicit progress of regression testing that integrates many key testing techniques into development and maintenance of evolving software.Establishing Effective Process for Testing. Cont’d•Some Open


View Full Document

USC CSCI 599 - Week8_1

Documents in this Course
Week2_b

Week2_b

10 pages

LECT6BW

LECT6BW

20 pages

LECT6BW

LECT6BW

20 pages

5

5

44 pages

12

12

15 pages

16

16

20 pages

Nima

Nima

8 pages

Week1

Week1

38 pages

Week11_c

Week11_c

30 pages

afsin

afsin

5 pages

October5b

October5b

43 pages

Week11_2

Week11_2

20 pages

final

final

2 pages

c-4

c-4

12 pages

0420

0420

3 pages

Week9_b

Week9_b

20 pages

S7Kriegel

S7Kriegel

21 pages

Week4_2

Week4_2

16 pages

sandpres

sandpres

21 pages

Week6_1

Week6_1

20 pages

4

4

33 pages

Week10_c

Week10_c

13 pages

fft

fft

18 pages

LECT7BW

LECT7BW

19 pages

24

24

15 pages

14

14

35 pages

Week9_c

Week9_c

24 pages

Week11_67

Week11_67

22 pages

Week1

Week1

37 pages

LECT3BW

LECT3BW

28 pages

Week8_c2

Week8_c2

19 pages

Week5_1

Week5_1

19 pages

LECT5BW

LECT5BW

24 pages

Week10_b

Week10_b

16 pages

Week11_1

Week11_1

43 pages

Week7_2

Week7_2

15 pages

Week5_b

Week5_b

19 pages

Week11_a

Week11_a

29 pages

LECT14BW

LECT14BW

24 pages

T7kriegel

T7kriegel

21 pages

0413

0413

2 pages

3

3

23 pages

C2-TSE

C2-TSE

16 pages

10_19_99

10_19_99

12 pages

s1and2-v2

s1and2-v2

37 pages

Week10_3

Week10_3

23 pages

jalal

jalal

6 pages

1

1

25 pages

T3Querys

T3Querys

47 pages

CS17

CS17

15 pages

porkaew

porkaew

20 pages

LECT4BW

LECT4BW

21 pages

Week10_1

Week10_1

25 pages

wavelet

wavelet

17 pages

October5a

October5a

22 pages

p289-korn

p289-korn

12 pages

2

2

33 pages

rose

rose

36 pages

9_7_99

9_7_99

18 pages

Week10_2

Week10_2

28 pages

Week7_3

Week7_3

37 pages

Load more
Download Week8_1
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Week8_1 and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Week8_1 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?