您的位置:首页 > 其它

Software Testing Essentials 软件测试精要

2011-11-16 16:41 295 查看
1. Full Life Cycle Test Strategies

SDLC: Software development life cycle (SDLC)

· Iterative

· Incremental

Agile: http://www.agilemanifesto.org/

InceptionàSprint (PlanàDevàTestàDeliver)àTransition

· What make “Waterfall” waterfall? sequential and document-driven.

· What make “Agile” agile? Flexible.

Why/What/How are we testing? Test Goal/ Test Strategy/Test Plan/Test Case

Test Goals: fall into 2 categories: Bug finding or validation.

Test Strategy

A test strategy is defined as:

The plans and methods used to test your product to reach its goal.

Test Plan: is a schedule, define scope – what to test, not to test; risks;

Objective, Scope, Strategy, Schedule, Resource, Risk;

Test Strategy: is not a schedule, define techniques and approach/methods to do testing; many test plans have a “Test Approach” section which is the test strategy.

2. Test Case Essentials

Test Case: title/objective, data, steps, expected res.

Test case design criteria:

· Test cases with no steps because it takes most of time to write, review and maintain test steps. (not for complex tests).

· A test case should be an idea how you test.

· A test ideally executes a single test objective.

· Neither too simple nor too complex. (combine a too simple test case with others)

· Not redundant with other test. (think of equivalence classes)

· Best of its breed (think of boundary conditions)

3. Test Methods

Test Type

Unit Testing: always white-box;

Integration Testing: gray-box, UI;

System Testing: always black-box and UI layer testing.

User Acceptance Testing: test before release; executed by users;

Passive Testing: Functional Testing

Active Testing: Ad Hoc Testing

Test Methods

Requirement-based Testing Requirement traceability (TestDirector), not bug-finding but a validation test.

Regression Testing: a confidence test, not active testing, not a bug finding method. has limitations; make sure of no bugs; repeating; automation testing;

Forced Error Testing: fault injection. Aka. negative testing. Testing aimed at showing software does not work.

· False passive: run into exception but test passed, due to bad test cases;

· False negative: designed negative test case;

Exploratory Testing: Test it when you explore it. It’s an approach and idea not a defined process. Do it when you think it’s proper.

Ad Hoc Testing: no test plan, no test case. Or rough test plan with areas concentration at one time. Find bugs and test cases. not documented before running; could find missing cases; Regression tests and ad hoc tests complement each other.

Scenario-based Testing: to test/simulate user behavior. Design use cases.

Model-based Testing: is a technique that generates tests. Create a model. State transition.

Data Driven Testing: a test technique that can be used in test methods like action based testing, model based testing, and scenario based testing.

Action-based Testing: aka. Keyword-based testing. Action: do something.

Risk-based Testing: not a test method but a prioritization or selection methods. Test potential problems. Known problems are not risks. Risk analysis: severity, frequency and priority.

Test Method

Bug Finding?

Validation?

Coverage?

Maintenance Cost

A test strategy sample

Requirements-based/Functional

X





√√

25%

Regression

X





√√√

25%

Negative/ Forced Error



X

X



10%

Ad Hoc/ Exploratory

√√

X

X

X

25%

Scenario



-

X

-

15%

Model-based









Action-based









Discussion: which will find more bugs?

Function Testing vs. Error Testing

20% 80%

Boundary Definition: equivalent classes;

Sample: Application name in Workbench;

· 26 English chars, 10 numbers;

· Windows reserved chars: /\:*?”<>| ( /\+$?%*:|”<>.[tab])

· Blank space, -,_,…

· Empty/long string;

· Non-ASCII chars(FG);

· Multi-byte chars(CFK);

New Feature Testing In a Sprint

Test Case Coverage:

· Functional

· Negative

· Stress

· Globalization

· Boundary

· Platform

· Performance

· Security

Reference:

googletesting.blogspot.com How Google Tests Software http://www.51testing.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: