Component Automation Testing
I am currently doing manual testing of components (such as Win and Web components developed in Microsoft .NET framework , ActiveX components etc.) . I wish to automate these testing. Can someone please suggest which all testing tools can cater to the automation process(wholly or partially)?
FYI I am enclosing a brief overview that describes the requirements.
Checklist for .NET Component Test Automation
Outlined here is a checklist that can be considered for automating test of .NET components. The .NET component testing can be categorized into following main areas when thinking automation, and each category or part may be automated individually or combined.
·Design-Time: design time interaction with the component under test
·Run-Time (Non UI): run time interaction with the component under test, not involving UI
·Run-Time (UI): run time interaction with the component under test, that involves UI
·Performance: various performance benchmarking
üSupport components on
Ø Win Form
Ø Web Form
Ø Component Tray
ü Inter-component behavior (behavior of component under test being dependent on settings on other component)
ü Spell check
ü Property Pages
Ø Property Pages specific features
Ø Setting reflection to the component under test
ü Property Window
ü Context Menu
ü Design-Time Setting Persistence into InitializeComponent() procedure
ü Reflection level object model intactness
Ø Property data type
Ø Property Get/Set status
Ø Method and instance constructor signatures
Ø Event handlers
Ø Enumeration and constants
Ø Object and object member description
² Of object
² Of object members
² Of method parameters (in tool tip)
² Of overloaded method (in tool tip)
ü Help invocation (low priority)
Ø Help topic mapping correctness
Ø Help suggestions in Dynamic Help Window
Run-Time (Non UI)
ü Property default value
ü Property value setting (in range)
ü Method invoke with different signatures and parameter value ranges
ü Event firing and sequence
ü Be able to control each UI element of a component under test, in terms of
Ø object referencing
Ø mouse click
Ø mouse move/drag
Ø keyboard input
ü Be able to monitor states of each UI element of a component under test, in terms of
Ø Position (relative)
ü Memory usage (GDI+ object usage efficiency)
ü CPU usage (thread usage)
ü Large amount of data/object usage
ü Data load time benchmarking
Checklist for Web Component Test Automation
Note: Most of the general features are covered above.
ü Browser Related:
Ø Browser capabilities (features/limitations)
Ø Browser versions (backward compatibility)
ü General Features:
Ø Hyperlink functionality (link validation) -> Text and Graphic links.
Ø HTML code validation (should be according to W3 standards).
Ø State/View State management
Ø Client Side scripting
ü Performance Related:
Ø Mean time to failure
Ø Memory leak
Ø Response time in case of large number of users
Ø Creating extra load on server?
Ø Concurrent User access
ü Compatibility related:
Ø Resolution check
² 640 X 480
² 800 X 600
² 1024 X 768
Ø Color check (Web Color)
² 8 bit
² 16 bit
² 24 bit
ü Security Related:
Ø Session/cookie management
Re: Component Automation Testing
Hi Adinohup and ALL,
I'm a newbie in the world of testing. I am just wondering Why and What is component(automated/manual) testing and its benefits. Any help/explanation/white paper out there?
Thank you verymuch in advance.
Re: Component Automation Testing
If you already own QARun, you should talk to your sales rep about TestPartner. It will support .Net with it's upcoming 5.2.0 release. The current release supports COM so you should be able to test your ActiveX components in 5.1.1 and the use of VBA as a scripting language is a bonus. You should be able to test the .Net web applications with 5.1.1 as long as they do not use the Windows forms, because they should be HTML. I am using the 5.2.0 beta and the only problem I have run into so far are third party controls for .Net. The third party ActiveX controls don't poses a problem because I can use .Object to get at the underling properties and methods, but with .Net this doesn't apply.
Hope this was somewhat helpful.