Hi,
Both of these terms are used in relation with the test cases. 1st we will see SELF CLEANING. When you write a test case, write it in such a way that, no steps should collide with each other. for eg. take an eg. of testing of USRAME/PASSWD scenario. if a step say " put invalid user name and click OK button" and the next one says "put valid user name", how the tester will execute second step as the first step doesn't fit the rule of SELF CLEANING. i.e. when you execute 1st step, after pressing OK button, system will display some message saying " invaid username/passwd" . without clearing that message by pressing OK or CLOSE button you can not execute 2nd step. so the steps will go like:
1 put invalid username
2 click on OK button
3 click on OK button or close dialog box.
4 Put valid user name.
We can say a test case is SELF STANDING, if and only if when not only the writer of the test case but other stakeholders of the system like manager,tester who are going to execute or even the novice tester will be able to understand it in the absence of writer.