Test Case: A test case in software engineering is a set of conditions or variables under which a tester will determine if a requirement or use case upon an application is partially or fully satisfied. It may take many test cases to determine that a requirement is fully satisfied.
Based on the test conditions, test plans we will test cases. Based on the test cases, we will prepare test scripts.
My question is clear, and siddiq also commented on that.
my intention of posting this question is we do testing without test cases like adhoc or exploratory testing.
then why do we need to prepare test cases?
Who said Adhoc or Exploratory testing is done without test cases???
I heard from lot of people where they say "With test cases means - Adhoc/Agile etc" This is not TRUE.
Coming to your question,
Test cases are prepared to ensure coverage in compliance with requirements.
Test cases help in tracing requirements, issues.
Test cases help avoid possible risk. (what if the resource assigned, leaves?)
Test cases help learn the application easy
Test Script is defined as The instructions in a test program. It defines the actions and pass/fail criteria.
For example, if the action is "to enter a valid account number," the expected result is that the data are accepted. Entering an invalid number should yield a particular error message.
Test script means A tool that specifies an order of actions that should be performed during a test session. The script also contains expected results. Test scripts may be manually prepared using paper forms, or may be automated using capture/playback tools or other kinds of automated scripting tools.