[ANN] BrowseUnit v4 preview: feedback needed
Romain Robbes
rrobbes at info.unicaen.fr
Thu Mar 4 17:29:53 UTC 2004
Le 3 mars 04, à 19:21, Markus Gaelli a écrit :
> Hi Romain,
>
>> The avantage of this method is that you see the presence (or absence)
>> of tests
>> "right now", without even clicking ... (and it was easier to do, too
>> ;-) ).
>> But having some tabs in the browser could be neat to ... IIRC
>> visualwork's browser
>> has for example tabs such as "code critic", etc ... So integrating
>> Ken's recent tab work
>> in the Browser might be a good solution, but it might be quite
>> difficult considering
>> the size and complexity of the existing code in the Browser...
> I prefer to see some specific method a bit larger than two methods,
> especially if they are then displayed incompletely.
> But maybe I am biased, as I am working in VW also from time to time...
The main point is to know easily that a method is tested, so using
colors,
it's doable too. The trouble is then to add tabs to the browser ...
>>
>>> And it is a bit slow I think. But on the other hand I can also
>>> understand that you do not want to cache...
>>>
>>
>> It's mainly because it is work in progress, too (I wanted to see if
>> people were interested
>> before going too far). On the other hand I use PackageInfo stuff
>> which is not cached either
>> (using PackageInfo>>methods is a bit slow), and as I heard that Avi
>> has projects to
>> add state to PackageInfo, maybe this could become faster without me
>> doing anything ;-).
>> I am also continually building PluggableTextMorphs, so that doesn't
>> help either.
> Sure. Postpone the performance enhancements to the very end.
> And also, if something is good and new, it is probably slow... ;-)
You have an example in mind ? ;-)
>> But I see that it can be useful to test certain
>> complex behaviors. I think they are some kind of "macro" tests, and
>> that we shall
>> take into account that there are at least two degrees of tests.
> Exactly. My current taxonomy of squeak unit tests:
>
> Each Squeak unit test can be seen either as
>
> - a method example
> - either identifiable as only one message of the package-under-test
> is sent directly
> + all assertions happen after this sent. One could use BrowseUnit to
> identify them.
> Example see: AnalyzerTest >> testExternalReferenceOf
> - or at least two messages of the package under test sent, probably
> it is the last of them
> + all assertions happen after this send. Do not know how to identify
> automatically.
> Example see: BrowseUnitTest>>testMethodTesters
> - or a combinations of method examples
> - sibling method examples
> Same method is tested in different scenarios
> + assertions are scattered.
> Example see: BCCMTest >> test01metaclassName
> - cascaded method examples
> Different levels of a scenario are built and tested + assertions are
> scattered
> Example see: Base64MimeConverterTest >> testMimeEncodeDecode
> - independent method examples
> Example see: BCCMTest >> test08BCCMhierarchy
> - other, yet to be named ones...
> (snip)
So there's quite different ways to exploit those things ...
Considering the slowness of your stuff (and mine's :-)), I thought that
by
using SystemChangeNotification and caching that could become acceptable.
>> IIRC you mentionned the type thingie a while ago, thinking you could
>> integrate it
>> in BrowseUnit. Do you have a piece of code doing it, so I could
>> integrate it ?
> I will have a look on this.
>> it sure seems interesting. Concerning the composition of unit tests,
>> could
>> you come up with an example (you seem to like them anyways ;-) )?
> See the MIME example above
In your example you decomposed a unit test, but do you think you can
compose
them ? what would that be useful for ?
Romain
More information about the Squeak-dev
mailing list
|