[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