Can someone explain clearly timeline for different types of testing. Where does Integration, Load, Stress testing and acceptance testing fit in? when are test plan for each of them is prepared (and what these test plans are based on eg. design, analysis, requirements)? It would be helpful to know where different types(performance, usability, regression etcetra) fit into levels(Integration, system, acceptance).
Each and every testing timeline is based on requirements , design and development size.It depends on project size, complexity etc. Also remember that not every project require all type of testing. So as a tester first of all it should be clear that which type of testing we will do for this particular project.
Test plan is always first step , So once requirement fixed you can start to create test plan. Testing can be start once design/development gets ready but you can create test plan once requirement fixed.
Test plan can contain following things as per "Standard for Software Test Documentation’ (IEEE 829) :
1 - Introduction
2 - Objective & Tasks
3 - Scope
4 - Testing Strategy
5 - Hardware Requirements
6 - Environment Requirements
7 - Test Schedule
8 - Features to Be Tested
9 - Features Not to Be Tested
10 - Resources/Roles & Responsibilities
11 - Dependencies
12 - Risks/Assumptions
13 - Tools
14 - Approvals
15 - References
Each and every step should have very detail description.
Regression testing can be done only when software is modified OR any new function added to software.
System testing is testing of whole system , If you do system testing then no need to do regression testing because you are checking everything so regression automation will be done here.
Acceptance testing can be done once all development completes , It is just comparison between your developed software and given requirement document to get confidence about level of quality.
Usability mostly done at last to ensure that how easy system is to use.It can be done by end user also.
Performance testing can be done if you require. You can do this to just know that how capable your system is if load comes on it. For ex: what will happen if my website will have traffic of 10K users in 2 hour. Mostly it can be done for large websites where possibilities of traffic is high.
All I have provided above based on your given details in question. You have not describe that what type of system you are going to test so I provided answer as per my experience and on general base.