Mock Objects is perhaps the best resource on the net.
Dale DeMott
Ranch Hand
Joined: Nov 02, 2000
Posts: 514
posted
0
Are you sure Mock Objects will allow you to test static methods? In working w/Mock Objects, it is to my understanding that these objects mock the original objects so you can stub in the method calls. Does this hold for static methods as well?
John Lee
Ranch Hand
Joined: Aug 05, 2001
Posts: 2545
posted
0
Originally posted by Dale DeMott: Are you sure Mock Objects will allow you to test static methods? In working w/Mock Objects, it is to my understanding that these objects mock the original objects so you can stub in the method calls. Does this hold for static methods as well?
i can not see static methods make big difference here...but i am not sure.
Dale DeMott
Ranch Hand
Joined: Nov 02, 2000
Posts: 514
posted
0
Usually with mock objects you create an interface that has the same method calls as your original object that you are testing. Then you have both your mock object and your original object implement the same interface. Then you have your program use this interface instead of your real object. This allows you to switch out the real object and the mock object without your program knowing objects have been switched out. Car implements ICar MockCar implements ICar ICar car = new MockCar(); //The code below wouldn't know if 'car' is a mock or not. This is usually how mock objects are used. (At least in our shop) This leaves out the ability to test static methods. Does anyone else have another method that might be more elegant? [ May 08, 2003: Message edited by: Dale DeMott ]
John Lee
Ranch Hand
Joined: Aug 05, 2001
Posts: 2545
posted
0
well, i just start reading on mock object, but i am sure you will fiind better answer in test forum.
Dale DeMott
Ranch Hand
Joined: Nov 02, 2000
Posts: 514
posted
0
For MockObjects, I have already looked for a solution. I was wondering if someone found something other than MockObjects that can help you with this. (And yes. Cindy should move this to the Testing forum)