On Thursday 06 June 2002 04:39 am, A. Keyton Weissinger wrote:
> Give it a shot. I am in the midst of a biggie refactor in response to
> Ken's feedback and to add stuff like POP3 test action support and the
> like. I want the thing to be commercial-grade and better so I try
> very diligently to respond quickly to user requests.
Keyton,
Thanks for the thorough review. You might consider putting that on
your web site for the time being.
I have to admit that I have Purcell's same reaction: I hate XML. My
hate has at least two sources:
* Syntax. For example, the <double>double</double> tagging of
everything and boneheaded rules, like <tag foo=4> is considered
unreadble (gimme a break!).
* Lack of programming. XML is not a programming language, but Python
is. I'd prefer to work with Python when constructing the test cases. I
think you can achieve the same declarative nature (by providing a
framework) while still having full access to the Python language and
libraries, which are invaluable.
Would you consider a Pythonic approach for Puffin specs? Here's a
translation from your last example to what I'm thinking. It's probably
not "right", but you get the idea and could do a better translation
yourself.
from puffin.Plan import Plan
class MyPlan(Plan):
def work(self):
while not self.condition('*'):
self.makeTask('login', actions=['resetInventory', 'login'])
for i in range(4):
self.makeTask('makeDecision', depends='login', actions=[
'selectRandomCategory',
'getItemLists',
'selectItem'])
while self.value('CURRENT_INVENTORY_COUNT'):
self.makeTask('makePurchase',
depends='makeDecision',
actions=['generateSelectionCount',
'addItemToCart',
'updateCurrentSelection',
'showCart',
'getUpdatedInventory'])
self.makeTask('checkOut', depends='makePurchase')
And if action names never have spaces, then as a convenience, the
actions= arg could be a string which makeTask() would .split() if
needed.
I don't even understand all of your approach, but the idea was to
translate the XML tags to self.foo() calls and use Python for looping
(and anything else). I could then even pull user names and passwords
from the database, and loop over those. Something I've done with Python
and Steve's framework, which I generally like, but still found tedious
(which to some extent is just the nature of automating tests).
So I'm interested in a higher level approach, but not if I get "cut
off".
-Chuck
_______________________________________________________________
Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm
_______________________________________________
Webware-discuss mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/webware-discuss