Posted by Albert Gareev on Jan 08, 2012
A few simple Excel macros I use for automatic data maintenance. Date Macro Current date/time =NOW() 9/7/2011 17:57 Date formatted as text =TEXT(NOW(),”mm/dd/yyyy”) 09/07/2011 Future date (5 days from today) =TEXT(NOW()+5,”mm/dd/yyyy”) 09/12/2011 A year 180 days before today =TEXT(YEAR(NOW()-180), “00”) 2011 A month 58 days from today =TEXT(MONTH(NOW()+58), “00”) 11 Year, formatted ...
Posted by Albert Gareev on Dec 08, 2011
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Description Copy all child elements (and attributes, comments, text nodes) from one XML node to another. Implementation Test Code ...
Posted by Albert Gareev on Dec 06, 2011
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Description Move all child elements (and attributes, comments, text nodes) from one XML node to another. Implementation Test Code ...
Posted by Albert Gareev on Nov 24, 2011
Description Get object reference. Get total number of items in the list. Generate an index within the given range. Select item by index. Implementation ...
Posted by Albert Gareev on Nov 07, 2011
Modern applications have a few layers of ‘defense’ that are supposed to protect against unauthorized access. The very first layer is at the front-end, merged with the UI. The UI part, client-side part, is at user’s computer and therefore users have the most capacities to manipulate it. Penetration testing is a purely exploratory testing activity. […] ...
Posted by Albert Gareev on Oct 20, 2011
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Description Locate XML node depth within the hierarchy. Valid argument: an XML element node (NODE_ELEMENT type). Implementation ...
Posted by Albert Gareev on Oct 08, 2011
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Description Create XML DOM object by loading source XML from string. If the string is empty or source XML is invalid returns Nothing. Implementation Test Code ...
Posted by Albert Gareev on Sep 26, 2011
Remote exploration of functionalities is one of the things I enjoy in load testing. I don’t like the definition as “non-functional” though. “Para-functional” sounds better, but (at least for me) thinking of those functionalities as system or service functionalities helps to assess them from purpose/value/risks perspectives. You can’t reach them manually, you can’t even see them, […] ...
Posted by Albert Gareev on Aug 02, 2011
Although it seems like just happened yesterday, it’s been well over a quarter since I took the course of Rapid Software Testing by Michael Bolton (the course is authored by James Bach and Michael Bolton). This is a major milestone in my learning of exploratory, heuristic-based testing approach. To be fair, I was somewhat skeptical […] ...
Posted by Albert Gareev on Jul 26, 2011
Reference page: Service Functions – System (QTP, VBScript) Description Check folder exists – check folder has files. Iterate through collection of files and keep reference of the most recently modified file (its DateLastModified property is always the highest number). The remaining reference is the one that you need. In case of errors the function returns […] ...
Posted by Albert Gareev on Jul 20, 2011
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Service Functions – Dictionary (QTP, TestComplete, VBScript) Description For each occurrence of XML node perform conversion to Dictionary, and store all records in indexed Dictionary object. Implementation ...
Posted by Albert Gareev on Jul 19, 2011
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Service Functions – Dictionary (QTP, TestComplete, VBScript) Description Create Dictionary object and populate with data (only direct content – text, comments, CData, and attributes) taken from XML node. Naming convention: @attr_name for attributes; #text_index for text nodes; #comment_index for comment nodes; #cdata_index for CData Section nodes. […] ...
Posted by Albert Gareev on Jun 23, 2011
Parent page: Generating Test Reports Today I put all examples together. Here’s our XML record simulating log data of a test session. XML Source The following line <?xml-stylesheet type=”text/xsl” href=”.\LogView4.xsl”?> instructs the web browser to use XSL script for visualization of XML data. Web-page Report And here’s the source code of the script XSL Source […] ...
Posted by Albert Gareev on Jun 14, 2011
Parent page: Generating Test Reports Today’s post is a little bit of a side mini-project within the test reports theme. What I wanted is to add more structure in test logs, but made it summarized. So I went to explore about simple approaches in that. Very often, on static pages (without AJAX) the approach used is […] ...
Posted by Albert Gareev on May 25, 2011
Parent page: Generating Test Reports Let’s now take the examples from the previous post, and add more style. Here’s our XML record simulating log data of a test session. XML Source Did you notice the following line? <?xml-stylesheet type=”text/xsl” href=”.\LogView3.xsl”?> This is how we instruct the web browser to use XSL script for visualization of XML data. […] ...
Posted by Albert Gareev on Mar 14, 2011
Parent page: Generating Test Reports Today I continue with more complex examples using previously demonstrated XSL parsing nodes grouped into sub-templates. Here’s our XML record simulating log data of a test session. XML Source Note that the structure of XML file is not identical to the previous examples. It has more complexities and dependencies that need […] ...
Posted by Albert Gareev on Mar 04, 2011
Parent page: Generating Test Reports Today I present XML Tree to HTML Table transformation example. Here’s our XML record simulating logged test steps. XML Source Did you notice the following line? <?xml-stylesheet type=”text/xsl” href=”.\Tree2Table.xsl”?> This is how we instruct the web browser to use XSL script for visualization of XML data. Web-page Report And here’s […] ...
Posted by Albert Gareev on Mar 03, 2011
Parent page: Generating Test Reports Today I present example on dynamically building HTML nodes, with XSL, and from XML data. Here’s our XML record simulating log data of a test session. XML Source Did you notice the following line? <?xml-stylesheet type=”text/xsl” href=”.\LogView1.xsl”?> This is how we instruct the web browser to use XSL script for […] ...
Posted by Albert Gareev on Mar 02, 2011
Parent page: Generating Test Reports Today I present example of an HTML Table populated with XML data. Here’s our XML record simulating stats data of a test session. XML Source Did you notice the following line? <?xml-stylesheet type=”text/xsl” href=”.\StatsTable.xsl”?> This is how we instruct the web browser to use XSL script for visualization of XML […] ...
Posted by Albert Gareev on Mar 01, 2011
Parent page: Generating Test Reports The Approach The previous post sets a lot of requirements altogether. Let’s try now to put some answers. How we can have a free, portable, yet powerful viewer? If we go with a web-page format, we can use a web browser for that purpose. If we go with XML format […] ...
Posted by Albert Gareev on Feb 14, 2011
Whether it’s an all-round automation tool, like TestComplete, or a lightweight Session-Based Exploratory Testing assistant, like RapidReporter, generating good test reports is a challenging task. Obviously, hand-crafted reports would be much better, and live communication is an ideal. Though quite often testers have to report in writing and/or remotely. And if testing is conducted with assistance of a […] ...
Posted by Albert Gareev on Jan 06, 2011
Close/Terminate Specified Process Parent page: Service Functions – DotNetFactory (QTP, VBScript) Description Create an instance of Process object through DotNetFactory – search for local processes by name – iterate through the returned array and close one by one. First attempt – “gentle” close (via CloseMainWindow()). WaitForExit() gives a process some time to finalize, you may customize […] ...
Posted by Albert Gareev on Jan 04, 2011
Check If a Process Exists in Memory Parent page: Service Functions – DotNetFactory (QTP, VBScript) Description Create an instance of Process object through DotNetFactory – search for local processes by name – return result as boolean. Note. Name is case-insensitive but no wildcards supported. Implementation Examples ...
Posted by Albert Gareev on Dec 16, 2010
Now I’m done with the series: GUI Recognition with TestComplete 3 Categories, 10 articles, 8 code examples. Overview of object recognition properties. Run-time GUI recognition methods. Routine operations with Web Browser window. Code examples and detailed explanations. Note: more TestComplete content to come next year. ...
Posted by Albert Gareev on Dec 13, 2010
Parent page: GUI Recognition with TestComplete TestComplete provides a whole set of run-time GUI recognition functionalities, based, however, on the same approach: recognition by property values and/or location of the object in internal hierarchy. In addition to methods that immediately return a child object, if it’s available, there are others, that help finding objects that only about […] ...
Posted by Albert Gareev on Dec 07, 2010
Parent page: GUI Recognition with TestComplete TestComplete provides a whole set of run-time GUI recognition functionalities, based, however, on the same approach: recognition by property values and/or location of the object in internal hierarchy. In addition to methods that immediately return a child object, if it’s available, there are others, that help finding objects that only about […] ...
Posted by Albert Gareev on Nov 25, 2010
Ultimate Paint is a full-featured 32-bit Windows graphics program for image creation, viewing and manipulation. It supports JPEG, GIF, PNG, BMP, PCX, AVI (reading only), TGA, WMF/EMF, ICO (reading only), IFF/LBM and WAP BMP image formats and Twain compatible scanners. You can easily print your image, setting its size, position and orientation. Ultimate Paint is still […] ...
Posted by Albert Gareev on Nov 23, 2010
Parent page: GUI Recognition with TestComplete First of all, a short note to those readers who like to rush into conclusions. This post is about a feature, not bug. Here I continue exploring TestComplete GUI recognition capabilities with code example. The previous two posts (here and here) were about Find, FindChild, and FindAllChildren methods. Today I […] ...
Posted by Albert Gareev on Nov 17, 2010
Parent page: GUI Recognition with TestComplete Close, minimize, maximize, move, resize browser window Description A WebForm (Page, Frame, table, etc.) can not be operated same way as window. The first thing function does is iterating upwards the hierarchy to access Process object, which is used to retrieve browser window reference. In the example presented, IEFrame property […] ...
Posted by Albert Gareev on Nov 11, 2010
Parent page: GUI Recognition with TestComplete TestComplete provides a whole set of run-time GUI recognition functionalities, based, however, on the same approach: recognition by property values and/or location of the object in internal hierarchy. Today’s post is about FindAllChildren method If proper selection of GUI recognition properties is challenge number zero for a beginner automation […] ...