[Dev] CATS Architecture Review
Brian Kirsch
bkirsch at osafoundation.org
Mon Nov 14 11:25:36 PST 2005
I would also like to attend and am available this Monday and next Monday
as well.
-Brian
Brian Kirsch - Email Framework Engineer
Open Source Applications Foundation
543 Howard St. 5th Floor
San Francisco, CA 94105
(415) 946-3056
http://www.osafoundation.org
Donn Denman wrote:
> I'd like to put together a review of the CATS architecture for
> sometime soon, preferably tomorrow (Monday). How does 3:00 sound? If
> you are interested in attending, and that time doesn't work for you,
> reply with a time that works for you, or wait until next Monday the 21st.
>
> The files we're reviewing are: QALogger.py, QAUITestAppLib.py in
> /tools, and we'll also briefly look at the individual CATS tests in
> /tools/QATestScripts/Functional/ and /tools/QATestScripts/Performance/
>
> Here's a rough list of the items I found while reviewing the code this
> evening.
>
> Overall issues
> --------------
> * Logger Start/Stop is being done in an inconvenient way. Better to
> have functions
> that can be done any time without Start/Stop side-effects, and
> explicitly put a Start/Stop
> call in for the action that's important in your test.
>
> * Ted found that he could not extend the test framework easily by
> adding a new item.
>
> * There's a lot of boilerplate that could be cleaned up
>
> QALogger.py
> -----------
> Major
> * Should use __new__ instead of a separate class to implement the
> singleton pattern.
> (Merges TestLogger into QALogger class)
>
> Minor
> * SuspendProfiling, ResumeProfiling probably are not needed given the
> Logger Start/Stop
> cleanup.
> * Lots of minor cleanup should be done
>
> QAUITestAppLib
> -------------
> Major
> * Remove usage of Logger.Start and Stop methods, and move them to
> individual test cases.
> * Item creation should use a list of Kinds/classes, instead of
> booleans for 5 pim kinds,
> so the code can be extended to other kinds and support stamped kinds.
> * Attribute Setters should know what kind they apply to, and
> automatically give errors
> when applied to the wrong kind.
> * Factor out the boilerplate in Check_DetailView(), Check_Object()
>
> Minor
> * Move getTime() and GetCollectionRow() from being functions to a
> methods of UITestItem.
> * Should call getattr() instead of __getattr__
>
> - Donn Denman
>
>
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> Open Source Applications Foundation "Dev" mailing list
> http://lists.osafoundation.org/mailman/listinfo/dev
More information about the Dev
mailing list