I bet most people do. An unsuccessful test case is one that causes a program to produce the correct result. A subtle point maybe, but once taken on board and firmly grasped, the effects are wonderful. You actually start to write a decent amount of test code. You correct the bugs, and now everything is working.
Testing is the process of executing a program with the intent of finding errors.
There are a couple of key points here. The first is to always assume that the program contains errors. The second is a reiteration that the major purpose of testing is to find errors. The benefits of gaining some degree of confidence if no tests fail, and acquiring a regression test for change control are secondary. If an error cannot occur, it will anyway.