[Chandler-dev] Script-recording/playback as test framework

John Anderson john at osafoundation.org
Tue Dec 26 17:38:17 PST 2006


On Dec 26, 2006, at 5:12 PM, Grant Baillie wrote:

>
> On 26 Dec, 2006, at 17:01, Mikeal Rogers wrote:
>
>>
>> First, I want to get rid of the previous pass/fail approach and  
>> just use asserts. It's fairly easy to trap asserts and it has the  
>> advantage of being easy to program, easy to catch in the debugger,  
>> and we can give python tracebacks on each test failure.
>>
>
> Personally, I'd vote against both asserts (which don't fire if  
> you're running optimized, as we'd want for the performance tests)  
> and the previous
There probably isn't much benefit in running tests with python  
optimization turned on, otherwise all the benefit of the testing code  
that uses asserts is lost. And if you replace asserts with some other  
check that is run with optimized python, that's pretty much  
equivalent to using asserts and running non-optimized Python.

That being said, the rest of our C/C++ code is compiled differently  
in debug and release, e.g. code optimization. So in this case it  
makes sense to run both release and debug since bugs can crop up in  
either case.
> pass/fail approach (which is baroque and error-prone). Instead, why  
> not have tests inherit from unittest.TestCase, since:
>
> 1) That has a pretty expressive API for validating state  
> (TestCase.failUnless, TestCase.failUnlessEqual, etc)
> 2) Tests that depend on setting up shared data can use inheritance,  
> usually in conjunction with setUp() methods.
> 3) Less wheel reinvention, less having developers have to learn new  
> APIs.
It may not matter too much what APIs we use for testing since I  
expect almost all the testing code will be automatically generated by  
the script recorder.
>
> ?
> --Grant
>
>
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> Open Source Applications Foundation "chandler-dev" mailing list
> http://lists.osafoundation.org/mailman/listinfo/chandler-dev



More information about the chandler-dev mailing list