I think we should start writing test cases beforehand before development start or at least with development task, based on the specification. After completion of development, we can run those test cases.
Its suggested to start designing the test cases as and when the corresponding documents (SFS/HLD/LLD Documents) are ready (either fully or partially complete for a module).
If this is religiously followed and the test cases are presented to the developer, the developer can test immediately after the coding. By doing so, we can prevent valuable Testing time and some bugs :-)
Test-Driven-Development helps in prevention of Bugs.
You can start your testcase preparation once the
-SRS(software requirement documents)
-HLD(High level design documents)
-LLD(LOW level design documents)
Based on this you can start writing testcase for
unit testcase,Integration testcase and system testcase along with development
I'm agree with Test-Driven-Development,But
anyway the development team also have own
unit level testcase and they will do the testing
To make sure the application or product does n't have any bugs in any level as a testing team ,We have to do testing for unit,integration and system some time we can combine the integration and system level testing (it depends on our application or product)and most of the time
SRS is used to develop system level testcase
HLD is used to develop Integration level testcase
LLD is used to develop unit level testcase
Preparing test cases prior to the implementation of the code based on SRS & Design specifications will really help us save time.
In the process we can have a set of test cases ready for execution once the coding is completed.
Test case has following headings.
Test Case objective:
Step number: Description: Expected Result/Actual result: Status Pass/Fail: Initial/Date