Posted by Albert Gareev on May 04, 2017
It certainly does help testers to understand code and be able to code on their own. So I welcome “coding kata” movement. In fact, I can recommend some good ones, like Coding Games. Not only to testers and wanna be programmers, also to teenagers and their parents. Exercises in a context, presented in a spectacular […] ...
Posted by Albert Gareev on May 15, 2015
This is a technical entry with my research-and-experiment notes. Feel free to add or argue. Try at your own risk. I continue my study journal figuring out HP ALM configuration. This is a second entry about customization with VBScript. General Idea Typical issue / defect management workflow is based on rules specific to the Role and […] ...
Posted by Albert Gareev on May 13, 2015
This is a technical entry with my research-and-experiment notes. Feel free to add or argue. Try at your own risk. I continue my study journal figuring out HP ALM configuration. This entry is about customization with VBScript. General Idea How many times we had to reopen failed fixes? How many times regression defects ruined testing […] ...
Posted by Albert Gareev on May 15, 2014
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Description Filters parent XML object by removing child XML nodes not matching specified attribute regex value. Implementation Unit Tests ...
Posted by Albert Gareev on Apr 23, 2014
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Description Filters parent XML object by removing child XML nodes not matching specified attribute value. Implementation Unit Tests ...
Posted by Albert Gareev on Apr 15, 2014
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Description Returns child XML node with specified attribute matching specified regex. Implementation Unit Tests ...
Posted by Albert Gareev on Feb 10, 2014
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Description Append all child elements from the list (including their attributes, comments, text nodes) to XML node. Implementation Test Code ...
Posted by Albert Gareev on Dec 15, 2012
Description Get parent object reference. In the example given, it’s a browser process, but you can narrow it down to a page or a web container object (table, div, etc.). Use FindAllChildren to retrieve array of links. – You can limit search depth according to your context. – You may want to do filtered search using […] ...
Posted by Albert Gareev on Dec 12, 2012
This post is not about performance testing with TestComplete. This post is about tweaking TestComplete configuration parameters to make it less “greedy” on resources, especially CPU, while performing run-time recognition of a complex GUI. This will mostly be useful to experienced test automation engineers who create their own scripts without record/playback and hard-coded GUI name […] ...
Posted by Albert Gareev on Nov 24, 2012
Description Let’s say we need to retrieve a number of megabytes from under “Lots of space” category. First, we need to explore the GUI implementation. If we’re lucky, this text node may have a unique class or ID value. Then it becomes a one-step search as in the code example below. However, if the text node doesn’t have […] ...
Posted by Albert Gareev on Nov 17, 2012
Description “Mouse Over” event triggers responses like highlighting, pop-up hints, etc. With TestComplete we can use one of GUI object’s methods – HoverMouse – to simulate mouse over by placing mouse cursor over object. Alternatively, we can use LLPlayer object to simulate mouse moves. In the example provided both methods are simulating mouse overs on […] ...
Posted by Albert Gareev on Sep 08, 2012
Parent page: Service Functions – MSXMLDOM (QTP, TestComplete, VBScript) Description Returns text value of node’s child attribute specified by name. Valid arguments: an XML element node (NODE_ELEMENT type), name of the attribute. If XML node is not defined, returns empty string. Uses private function p_GetXMLElementAttrText, defined within the library (see parent page). Implementation ...
Posted by Albert Gareev on Sep 05, 2012
Parent page: Load/Performance Testing with NeoLoad In a few of my recent posts I mentioned importance of avoiding unrealistic stress in test sessions. – And I also mentioned that there are situations when we indeed want to explore behavior of the application being under stressing load. But first of all, let’s agree on some definitions. […] ...
Posted by Albert Gareev on Aug 22, 2012
Parent page: Load/Performance Testing with NeoLoad Providing irrelevant or misleading test results is worse than not providing test results at all. When using automation, testers must be twice as careful about relevance of tests – or maybe ten more times, hundred times – depending on how much judgment is passed on to mindless side. Load […] ...
Posted by Albert Gareev on Aug 15, 2012
Parent page: Load/Performance Testing with NeoLoad Load scripts are typically linear: they’re intended to generate a load, not to cover sophisticated logical scenarios checked by functional automation and explored by skilled testers. For this reason, load scripts rarely contain complex code branches and loops. Yet there are functional scenarios that are part of the load, […] ...
Posted by Albert Gareev on Aug 08, 2012
Parent page: Load/Performance Testing with NeoLoad Although recording is necessary phase in creation of load scripts, I prefer constructing my own modules based on results of reverse engineering analysis of captured client/server communication. Partially because this way I create reusable structures with containers, partially because I want to control setting of think time and pacing, […] ...
Posted by Albert Gareev on May 23, 2012
Parent page: Load/Performance Testing with NeoLoad The way you execute requests to the server will have a dramatic effect on results! Why dramatic? – Because numbers might be telling opposite stories, either giving you a true picture or misleading you about what’s happening. But let’s get to a concrete example! We start with the same […] ...
Posted by Albert Gareev on May 22, 2012
Parent page: Load/Performance Testing with NeoLoad I keep reviewing NeoLoad Containers, this reusable units, serving the same way as functions in a function library. The main outcome we want to get from load session is measurements – response time, errors, throughput, etc. All tools allow obtaining measurements from individual requests posted and some tools allow obtaining aggregate […] ...
Posted by Albert Gareev on May 16, 2012
Parent page: Load/Performance Testing with NeoLoad I’ve quickly mentioned containers here. Now I want to get back to this concept with regards to load execution delays, commonly referred as “Think Time” and “Pace Time”. Same as typical user makes pauses while working with an application, the load script needs to delay execution for periods of time in […] ...
Posted by Albert Gareev on May 15, 2012
Parent page: Load/Performance Testing with NeoLoad You probably don’t want to rewrite your load testing scripts just because you need to run them against another server. With NeoLoad you can re-point them with one of the following. Change ‘server’ parameter in call of GET/POST methods Go to Design tab Select Virtual User – your script […] ...
Posted by Albert Gareev on Apr 17, 2012
Parent page: Using GUI Forms in TestComplete Even though automation scripts are intended to drive the application under test there are cases when communication with tester is required. With TestComplete, we have a vast arsenal of predefined GUI controls for that (and those, acquainted with Delphi, will be pleasantly surprised by the way it’s organized). […] ...
Posted by Albert Gareev on Apr 16, 2012
Parent page: Using GUI Forms in TestComplete Even though automation scripts are intended to drive the application under test there are cases when communication with tester is required. With TestComplete, we have a vast arsenal of predefined GUI controls for that (and those, acquainted with Delphi, will be pleasantly surprised by the way it’s organized). […] ...
Posted by Albert Gareev on Apr 10, 2012
Parent page: Using GUI Forms in TestComplete Even though automation scripts are intended to drive the application under test there are cases when communication with tester is required. With TestComplete, we have a vast arsenal of predefined GUI controls for that (and those, acquainted with Delphi, will be pleasantly surprised by the way it’s organized). […] ...
Posted by Albert Gareev on Apr 09, 2012
Parent page: Using GUI Forms in TestComplete Even though automation scripts are intended to drive the application under test there are cases when communication with tester is required. With TestComplete, we have a vast arsenal of predefined GUI controls for that (and those, acquainted with Delphi, will be pleasantly surprised by the way it’s organized). […] ...
Posted by Albert Gareev on Mar 06, 2012
Parent page: Service Functions – String (QTP, VBScript) Description Get token string from the source string. Position is relative, defined by another token-keyword and a number. Implementation ...
Posted by Albert Gareev on Mar 05, 2012
Parent page: Service Functions – String (QTP, VBScript) Description Get token string from the source string. Position is absolute, defined by number. Implementation ...
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 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 ...