Deprecated: __autoload() is deprecated, use spl_autoload_register() instead in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_class_loader.funcs.php on line 55

Deprecated: Array and string offset access syntax with curly braces is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_misc.funcs.php on line 5137

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_misc.funcs.php on line 8521

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home3/zeenyxor/public_html/b2evolution1/inc/files/model/_file.funcs.php on line 1442

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home3/zeenyxor/public_html/b2evolution1/inc/files/model/_file.funcs.php on line 1447

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home3/zeenyxor/public_html/b2evolution1/inc/files/model/_file.funcs.php on line 1453

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home3/zeenyxor/public_html/b2evolution1/inc/files/model/_file.funcs.php on line 1460

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home3/zeenyxor/public_html/b2evolution1/inc/files/model/_file.funcs.php on line 1465

Deprecated: define(): Declaration of case-insensitive constants is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/model/db/_db.class.php on line 49

Deprecated: define(): Declaration of case-insensitive constants is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/model/db/_db.class.php on line 50

Deprecated: define(): Declaration of case-insensitive constants is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/model/db/_db.class.php on line 51

Deprecated: Function get_magic_quotes_gpc() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_param.funcs.php on line 2112

Warning: Cannot modify header information - headers already sent by (output started at /home3/zeenyxor/public_html/b2evolution1/inc/_core/_class_loader.funcs.php:55) in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_template.funcs.php on line 379

Warning: Cannot modify header information - headers already sent by (output started at /home3/zeenyxor/public_html/b2evolution1/inc/_core/_class_loader.funcs.php:55) in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_template.funcs.php on line 40

Warning: Cannot modify header information - headers already sent by (output started at /home3/zeenyxor/public_html/b2evolution1/inc/_core/_class_loader.funcs.php:55) in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_template.funcs.php on line 317

Warning: Cannot modify header information - headers already sent by (output started at /home3/zeenyxor/public_html/b2evolution1/inc/_core/_class_loader.funcs.php:55) in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_template.funcs.php on line 318

Warning: Cannot modify header information - headers already sent by (output started at /home3/zeenyxor/public_html/b2evolution1/inc/_core/_class_loader.funcs.php:55) in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_template.funcs.php on line 319

Warning: Cannot modify header information - headers already sent by (output started at /home3/zeenyxor/public_html/b2evolution1/inc/_core/_class_loader.funcs.php:55) in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_template.funcs.php on line 320

Warning: Cannot modify header information - headers already sent by (output started at /home3/zeenyxor/public_html/b2evolution1/inc/_core/_class_loader.funcs.php:55) in /home3/zeenyxor/public_html/b2evolution1/skins/_rss2/index.main.php on line 45

Warning: Cannot modify header information - headers already sent by (output started at /home3/zeenyxor/public_html/b2evolution1/inc/_core/_class_loader.funcs.php:55) in /home3/zeenyxor/public_html/b2evolution1/skins/_rss2/index.main.php on line 46
Zeenyx Software https://zeenyx.org/b2evolution1/blog1.php en-US http://blogs.law.harvard.edu/tech/rss 60 Zeenyx Software adds Loop Software & Testing Services as a North America Reseller & Implantation Partner https://zeenyx.org/b2evolution1/blog1.php/zeenyx-software-adds-loop-software Tue, 09 Jun 2020 19:12:00 +0000 zeenyxsupport Uncategorized 36@https://zeenyx.org/b2evolution1/
Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home3/zeenyxor/public_html/b2evolution1/inc/plugins/model/_plugins_admin.class.php on line 1466

Deprecated: Array and string offset access syntax with curly braces is deprecated in /home3/zeenyxor/public_html/b2evolution1/plugins/_auto_p.plugin.php on line 502

Deprecated: Array and string offset access syntax with curly braces is deprecated in /home3/zeenyxor/public_html/b2evolution1/plugins/_auto_p.plugin.php on line 500

Deprecated: Array and string offset access syntax with curly braces is deprecated in /home3/zeenyxor/public_html/b2evolution1/plugins/_auto_p.plugin.php on line 500

Deprecated: Array and string offset access syntax with curly braces is deprecated in /home3/zeenyxor/public_html/b2evolution1/plugins/_texturize.plugin.php on line 116

Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761
<p><strong>Zeenyx Software adds Loop Software &amp; Testing Services as a North America Reseller &amp; Implantation Partner</strong></p> <p><em>Plans in place to offer additional in-person training &amp; onboarding opportunities</em></p> <p>CAMBRIDGE, Mass. – Zeenyx is thrilled to announce Loop Software &amp; Testing Services will be joining its global network of partners in the Software Testing space. Zeenyx has a long traditional of high-quality implementation partners &amp; Loop will continue to add to this legacy. Over the coming months, Loop will offer additional onboarding, training, &amp; engagement opportunities.</p> <p> Brian Le Suer –</p> <p> “We couldn’t be more excited about having Loop join our mission. We could not have achieved the board-based success AscentialTest has had without fantastic partners. We believe that Loop will not only be a value add to future customer organizations, but has plenty of value to offer the existing client base. Although it is certainly a trying time, our team could not be more excited about the future of Zeenyx &amp; the opportunities to come.”</p> <p> Ben Fellows –</p> <p> “Loop has had the opportunities to work in many different testing platforms in service of our clients. We believe Zeenyx’s AscentialTest is head &amp; shoulders above the rest in addressing the current challenges modern software testers face. With an emphasis on maintainability, reusability, &amp; durability, we could not be more blown away by our experience so far. This product is truly one of a kind in the testing space &amp; we are proud to be partnering with a company that has such a strong software testing lineage.</p> <p>AscentialTest is a comprehensive software testing solution that provides test planning, test data management, manual and automated test development, test execution, defect tracking and reporting. Built around our patented ‘smart image’ technology, our users build test components by dragging and dropping from a series of application images not from fragile, difficult to maintain recordings.</p> <p> Loop offers a suite of managed services including automated testing, manual testing, test planning/designed, product documentation, &amp; more.</p> <p> In recognition of the challenging economic time &amp; in celebration of this partnership, Loop Software will be waiving its customary “set-up fee” and will be offering comprehensive automation suites when paired with maintenance contracts.</p> <p> </p><div class="item_footer"><p><small><a href="https://zeenyx.org/b2evolution1/blog1.php/zeenyx-software-adds-loop-software">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Zeenyx Software adds Loop Software & Testing Services as a North America Reseller & Implantation Partner

Plans in place to offer additional in-person training & onboarding opportunities

CAMBRIDGE, Mass. – Zeenyx is thrilled to announce Loop Software & Testing Services will be joining its global network of partners in the Software Testing space. Zeenyx has a long traditional of high-quality implementation partners & Loop will continue to add to this legacy. Over the coming months, Loop will offer additional onboarding, training, & engagement opportunities.

 Brian Le Suer –

 “We couldn’t be more excited about having Loop join our mission. We could not have achieved the board-based success AscentialTest has had without fantastic partners. We believe that Loop will not only be a value add to future customer organizations, but has plenty of value to offer the existing client base. Although it is certainly a trying time, our team could not be more excited about the future of Zeenyx & the opportunities to come.”

 Ben Fellows –

 “Loop has had the opportunities to work in many different testing platforms in service of our clients. We believe Zeenyx’s AscentialTest is head & shoulders above the rest in addressing the current challenges modern software testers face. With an emphasis on maintainability, reusability, & durability, we could not be more blown away by our experience so far. This product is truly one of a kind in the testing space & we are proud to be partnering with a company that has such a strong software testing lineage.

AscentialTest is a comprehensive software testing solution that provides test planning, test data management, manual and automated test development, test execution, defect tracking and reporting. Built around our patented ‘smart image’ technology, our users build test components by dragging and dropping from a series of application images not from fragile, difficult to maintain recordings.

 Loop offers a suite of managed services including automated testing, manual testing, test planning/designed, product documentation, & more.

 In recognition of the challenging economic time & in celebration of this partnership, Loop Software will be waiving its customary “set-up fee” and will be offering comprehensive automation suites when paired with maintenance contracts.

 


Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
]]>
https://zeenyx.org/b2evolution1/blog1.php/zeenyx-software-adds-loop-software#comments https://zeenyx.org/b2evolution1/blog1.php?tempskin=_rss2&disp=comments&p=36
Best Practice for using Selectors https://zeenyx.org/b2evolution1/blog1.php/best-practice-for-using-selectors Thu, 05 Mar 2020 17:37:00 +0000 zeenyxsupport Uncategorized 34@https://zeenyx.org/b2evolution1/
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
<p>While it is not always necessary to name the selector when using it to select a row in a table, it is <strong>always</strong> good practice.  In the example below, the row is selected using the ‘customer id’:</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p34/selectorvalueonly.png?mtime=1583429506" rel="lightbox[p34]" id="link_22"><img alt="Best Practice for using Selectors" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p34/_evocache/selectorvalueonly.png/fit-400x320.png?mtime=1583429506" width="400" height="218" class="loadimg" /></a></div> <p>The action to select the row uses the selector ‘SelectByCustomerId’, but it does not actually specify the selector. Instead only the value of the selector, represented by the variable ‘CustId’, is specified:</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p34/selectvalueonlyline.png?mtime=1583429500" rel="lightbox[p34]" id="link_21"><img alt="Best Practice for using Selectors" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p34/_evocache/selectvalueonlyline.png/fit-400x320.png?mtime=1583429500" width="400" height="23" /></a></div> <p>Because the name of the selector is specified, its relative order in the AppObjects definition will not affect the result.</p> <p>That action only works because the seclector SelectByCustomerId is listed first under its corresponding row (see the right most arrow in the figure above). If the selector called ‘SelectByLastName’ were moved up one line so that it was the first listed selector, then the action would fail. A more robust way to define an action that uses a selector is to specify the name of the selector along with its value as in the updated example below:</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p34/selectornameandvalue.png?mtime=1583429496" rel="lightbox[p34]" id="link_20"><img alt="Best Practice for using Selectors" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p34/_evocache/selectornameandvalue.png/fit-400x320.png?mtime=1583429496" width="400" height="32" /></a></div> <p>Because the name of the selector is specified, its relative order in the AppObjects definition will not affect the result.</p> <p> </p><div class="item_footer"><p><small><a href="https://zeenyx.org/b2evolution1/blog1.php/best-practice-for-using-selectors">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

While it is not always necessary to name the selector when using it to select a row in a table, it is always good practice.  In the example below, the row is selected using the ‘customer id’:

Best Practice for using Selectors

The action to select the row uses the selector ‘SelectByCustomerId’, but it does not actually specify the selector. Instead only the value of the selector, represented by the variable ‘CustId’, is specified:

Best Practice for using Selectors

Because the name of the selector is specified, its relative order in the AppObjects definition will not affect the result.

That action only works because the seclector SelectByCustomerId is listed first under its corresponding row (see the right most arrow in the figure above). If the selector called ‘SelectByLastName’ were moved up one line so that it was the first listed selector, then the action would fail. A more robust way to define an action that uses a selector is to specify the name of the selector along with its value as in the updated example below:

Best Practice for using Selectors

Because the name of the selector is specified, its relative order in the AppObjects definition will not affect the result.

 


Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
]]>
https://zeenyx.org/b2evolution1/blog1.php/best-practice-for-using-selectors#comments https://zeenyx.org/b2evolution1/blog1.php?tempskin=_rss2&disp=comments&p=34
AscentialTest 9.5 is now available https://zeenyx.org/b2evolution1/blog1.php/ascentialtest-9-5-is-now Tue, 14 Jan 2020 04:49:00 +0000 zeenyxsupport Uncategorized 33@https://zeenyx.org/b2evolution1/
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
<p>AscentialTest 9.5 is now available for download. Check out these new features:</p> <p><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p33/at95_features.png?mtime=1578951978" rel="lightbox[p33]" id="link_19"><img alt="AscentialTest 9.5 is now available" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p33/_evocache/at95_features.png/fit-192x192.png?mtime=1578951978" width="192" height="158" class="evo_thumbnail evo_thumbnail__left loadimg" /></a></p> <p> </p><div class="item_footer"><p><small><a href="https://zeenyx.org/b2evolution1/blog1.php/ascentialtest-9-5-is-now">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

AscentialTest 9.5 is now available for download. Check out these new features:

AscentialTest 9.5 is now available

 


Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
]]>
https://zeenyx.org/b2evolution1/blog1.php/ascentialtest-9-5-is-now#comments https://zeenyx.org/b2evolution1/blog1.php?tempskin=_rss2&disp=comments&p=33
AscentialTest 9.5 upcoming features https://zeenyx.org/b2evolution1/blog1.php/ascentialtest-9-5-upcoming-features Tue, 22 Oct 2019 03:10:00 +0000 zeenyxsupport Uncategorized 32@https://zeenyx.org/b2evolution1/
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
<p>AscentialTest 9.5 is in the works. Check out these upcoming features:</p> <p>1. Results output now displays Step trace so that the user can easily determine the location of each test action.</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p32/resultsoutput.png?mtime=1571691763" rel="lightbox[p32]" id="link_18"><img alt="AscentialTest 9.5 upcoming features" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p32/_evocache/resultsoutput.png/fit-400x320.png?mtime=1571691763" width="379" height="320" class="loadimg" /></a></div> <p>2. New Profile wizard provides assistance for enabling extensions and setting up a new project.</p> <p>3, AppState wizard now prompts for Login window.</p> <p>4. AscentialTest will be localized in French, Japanese and Spanish.</p> <p>5. PowerBuilder Bitmaps can now be defined through drag and drop.</p> <p>6. PowerBuilder path generation options can now be prioritized.</p> <p>7. User can now control the playback speed so that the test execution can be slowed down to assist debugging and demonstration.</p> <p>Stay tuned .. more to come.</p><div class="item_footer"><p><small><a href="https://zeenyx.org/b2evolution1/blog1.php/ascentialtest-9-5-upcoming-features">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

AscentialTest 9.5 is in the works. Check out these upcoming features:

1. Results output now displays Step trace so that the user can easily determine the location of each test action.

AscentialTest 9.5 upcoming features

2. New Profile wizard provides assistance for enabling extensions and setting up a new project.

3, AppState wizard now prompts for Login window.

4. AscentialTest will be localized in French, Japanese and Spanish.

5. PowerBuilder Bitmaps can now be defined through drag and drop.

6. PowerBuilder path generation options can now be prioritized.

7. User can now control the playback speed so that the test execution can be slowed down to assist debugging and demonstration.

Stay tuned .. more to come.


Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
]]>
https://zeenyx.org/b2evolution1/blog1.php/ascentialtest-9-5-upcoming-features#comments https://zeenyx.org/b2evolution1/blog1.php?tempskin=_rss2&disp=comments&p=32
AscentialTest 9.4 Feature Set https://zeenyx.org/b2evolution1/blog1.php/ascentialtest-9-4-feature-set Sat, 13 Jul 2019 02:40:00 +0000 zeenyxsupport Uncategorized 31@https://zeenyx.org/b2evolution1/
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761
<p><strong>Check out the new features of AscentialTest 9.4<br /></strong></p> <ul> <li>Non-English keyboard runtime support.</li> <li>Support for Electron applications.</li> <li>Support for 64 bit PowerBuilder applications.</li> <li>Resizable dialog boxes in AscentialTest UI.</li> <li>Reorganized AscentialTest File menu.</li> <li>Drag and drop support for PowerBuilder toolbar definition.</li> <li>Ability to disable auto-scroll in Elements and App Object panels.</li> <li>RenderImage improvements.</li> <li>New Html5 attributes.</li> <li>Several AscentialTest UI Improvements.</li> <li>Close action added for MDIChild class</li> </ul><div class="item_footer"><p><small><a href="https://zeenyx.org/b2evolution1/blog1.php/ascentialtest-9-4-feature-set">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Check out the new features of AscentialTest 9.4

  • Non-English keyboard runtime support.
  • Support for Electron applications.
  • Support for 64 bit PowerBuilder applications.
  • Resizable dialog boxes in AscentialTest UI.
  • Reorganized AscentialTest File menu.
  • Drag and drop support for PowerBuilder toolbar definition.
  • Ability to disable auto-scroll in Elements and App Object panels.
  • RenderImage improvements.
  • New Html5 attributes.
  • Several AscentialTest UI Improvements.
  • Close action added for MDIChild class

Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
]]>
https://zeenyx.org/b2evolution1/blog1.php/ascentialtest-9-4-feature-set#comments https://zeenyx.org/b2evolution1/blog1.php?tempskin=_rss2&disp=comments&p=31
Incremeting Entitities for Uniqueness https://zeenyx.org/b2evolution1/blog1.php/incremeting-entitities-for-uniqueness Wed, 27 Feb 2019 23:24:00 +0000 zeenyxsupport Uncategorized 30@https://zeenyx.org/b2evolution1/
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
<p>Many applications contain entities that must be unique. A common example is a customer or member identifier like email address. To prevent input errors, automated tests must be designed to ensure that these identifiers are unique. There are several techniques to achieve uniqueness, including appending date/time strings or a unique number to the entity name. This post describes the latter solution.</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p30/incrementer.png?mtime=1551282875" rel="lightbox[p30]" id="link_17"><img alt="Incremeting Entitities for Uniqueness" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p30/_evocache/incrementer.png/fit-400x320.png?mtime=1551282875" width="400" height="87" class="loadimg" /></a></div> <p>The image above displays source code for the Incrementer function. It takes as parameters the name, section and lValue of the .ini file that will be used to store the current value of the incrementer. It also takes a Boolean flag that specifies whether to increment the value on the current call. This is useful because some calls might want to get the current value of the incrementer without changing its value. The function outputs the current value of the incrementer as an out parameter of type integer. It also returns it as a string for convenience.</p> <p>The function is quite simple. It opens the specified .ini file, gets the value of the incremeter specified by the IncrementerLValue parameter and converts it to an integer. If bIncrement is set to 'true', it increments the rValue and writes it back to the .ini file. Finally it sets the IncrementerValue and passes it to the calling function through both the out parameter and the return value.</p> <p>The calling function can then append the retuned value to an entity name before inputting it to the target application.</p> <p>If you have any questions about this approach or would like to obtain a copy of the function's source code, please contact Zeenyx Support.</p> <p> </p> <p> </p><div class="item_footer"><p><small><a href="https://zeenyx.org/b2evolution1/blog1.php/incremeting-entitities-for-uniqueness">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Many applications contain entities that must be unique. A common example is a customer or member identifier like email address. To prevent input errors, automated tests must be designed to ensure that these identifiers are unique. There are several techniques to achieve uniqueness, including appending date/time strings or a unique number to the entity name. This post describes the latter solution.

Incremeting Entitities for Uniqueness

The image above displays source code for the Incrementer function. It takes as parameters the name, section and lValue of the .ini file that will be used to store the current value of the incrementer. It also takes a Boolean flag that specifies whether to increment the value on the current call. This is useful because some calls might want to get the current value of the incrementer without changing its value. The function outputs the current value of the incrementer as an out parameter of type integer. It also returns it as a string for convenience.

The function is quite simple. It opens the specified .ini file, gets the value of the incremeter specified by the IncrementerLValue parameter and converts it to an integer. If bIncrement is set to 'true', it increments the rValue and writes it back to the .ini file. Finally it sets the IncrementerValue and passes it to the calling function through both the out parameter and the return value.

The calling function can then append the retuned value to an entity name before inputting it to the target application.

If you have any questions about this approach or would like to obtain a copy of the function's source code, please contact Zeenyx Support.

 

 


Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
]]>
https://zeenyx.org/b2evolution1/blog1.php/incremeting-entitities-for-uniqueness#comments https://zeenyx.org/b2evolution1/blog1.php?tempskin=_rss2&disp=comments&p=30
Returning the Target Application to the Base State https://zeenyx.org/b2evolution1/blog1.php/returning-the-target-application-to Wed, 05 Dec 2018 05:12:00 +0000 zeenyxsupport Uncategorized 29@https://zeenyx.org/b2evolution1/
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
<p><strong>Introduction</strong></p> <p>The ‘start’ and ‘finish’ phases are essential components of an automated testing project. The ‘start’ phase defines what occurs before a test is run. The finish phase defines what occurs after.</p> <p>AscentialTest is designed so that each test automatically has a start and finish phase. The start phase is mostly generated for the user through the App State wizards. The finish phase is left to the user. Recently we’ve discovered that many users are unaware of mechanics of the finish phase, so we decided to communicate best practices around the topic. This paper explains our intentions in designing the ‘Test’ class and how we envision the ‘OnFinish’ to be configured.</p> <p> <strong>The Test Class</strong></p> <p>Every test created in AscentialTest derives from a class called ‘Test’ as shown below:</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p29/the_test_class.png?mtime=1543961165" rel="lightbox[p29]" id="link_16"><img alt="Returning the Target Application to the Base State" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p29/_evocache/the_test_class.png/fit-400x320.png?mtime=1543961165" width="234" height="320" class="loadimg" /></a></div> <p>Because the ‘Test’ class is pretty much invisible, we all tend to take it for granted. When we click on the ‘Run’ icon in AscentialTest, we expect a test to run and it does because of the ‘Run’ method that is built into the class. But it isn’t just the body of the test that is being run. Every time a test is executed, the start and finish actions are also run.</p> <p>Here is a brief explanation: When a test is executed in AscentialTest, the ‘Run’ method is called. The ‘Run’ method starts a timer and then calls another built-in method called ‘OnStart’. Most users are familiar with ‘OnStart’ because it is automatically generated by the App State wizards. In most cases, ‘OnStart’ includes the actions that launch and, if applicable, log in to the target application. Next the ‘Main’ gets called. The ‘Main’ includes all the steps and actions that make up the body of the test:</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p29/body_of_test.png?mtime=1543961165" rel="lightbox[p29]" id="link_15"><img alt="Returning the Target Application to the Base State" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p29/_evocache/body_of_test.png/fit-400x320.png?mtime=1543961165" width="400" height="176" class="loadimg" /></a></div> <p>If an exception is raised during the ‘Main’, another method called ‘OnException’ gets called. Its job is to report the exception to the Results Output. Whether or not there is an exception, the ‘OnFinish’ method finally gets called. We expect the user to configure ‘OnFinish’ to return the target application to a known state that we refer to as the ‘base state’. It’s typically the state of the application when it is first invoked, after any login has been completed.</p> <p>‘OnFinish’ is accessed by using the dropdown located above the steps/actions area in the App State Editor:</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p29/onstartdropdown.png?mtime=1543961165" rel="lightbox[p29]" id="link_14"><img alt="Returning the Target Application to the Base State" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p29/_evocache/onstartdropdown.png/fit-400x320.png?mtime=1543961165" width="400" height="113" class="loadimg" /></a></div> <p>By default, ‘OnFinish’ is empty. That’s because the actions to return an application to its base state vary widely from application to application. It is not something that Zeenyx can provide universally. However we can offer guidelines and provide a function to help get you started.</p> <p> <strong>OnFinish</strong></p> <p>To ensure that tests run reliably, it’s important that they are independent of each other and that each test starts and stops at the base state as defined above. A well-designed test includes steps that return the target application to the ‘base state’, which usually entails closing dialogs that were opened during the test. When a test fails and an exception is raised, there is often a break in the flow of the test. Control is passed to ‘OnException’ to raise the error and the application is often left in a state where the current test transaction is incomplete. This is where ‘OnFinish’ is called upon to return the target application to the ‘base state’.</p> <p>To make it easier for users to configure the ‘OnFinish’, we’ve created a new function called ‘CloseActiveWindows’ partially pictured below:</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p29/closeactivewindows.png?mtime=1543961165" rel="lightbox[p29]" id="link_13"><img alt="Returning the Target Application to the Base State" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p29/_evocache/closeactivewindows.png/fit-400x320.png?mtime=1543961165" width="327" height="320" class="loadimg" /></a></div> <p>‘CloseActiveWindows’ checks the state of the target application to determine if the application’s main window is active. If any dialogs or windows are opened, it attempts to close them. The built-in ‘Close’ action is called for each active window found. ‘Close’ attempts to click on the CloseBox (The ‘X’ in the upper right corner of a dialog) if it exists. Otherwise it types the &lt;ALT-F4&gt; keys. If the window is not successfully closed, ‘CloseActiveWindows’ takes additional steps to attempt to close it.</p> <p> A call to ‘CloseActiveWindows’ should be placed in the ‘OnFinish’ method of your App State as pictured below:</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p29/on_finish.png?mtime=1543961164" rel="lightbox[p29]" id="link_12"><img alt="Returning the Target Application to the Base State" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p29/_evocache/on_finish.png/fit-400x320.png?mtime=1543961164" width="400" height="80" class="loadimg" /></a></div> <p>The first parameter is the App Object name of the target application’s main window. The second parameter specifies the number of attempts that should be made to attempt to close any active dialogs.</p> <p> We recognize that many applications will require further action to return the target application to the ‘base state’. The recommended approach is to create a custom ‘Close’ action for each dialog or window that requires addition steps. If a ‘Close’ action is defined for an App Object, it is that custom action that will be called by ‘CloseActiveWindows’ instead of the built-in Close action. A simple ‘Close’ actions may require a click on an ‘OK’ button. A more complex ‘Close’ action might entail the actions required to complete the current transaction. The amount of ‘statefulness’ in a given application determines the complexity of the ‘Close’ actions that will be required.</p> <p> If you are reading this document, chances are that you already have ‘CloseActiveWindows’ in your possession.  If you do not, please contact us at <a href="mailto:support@zeenyx.com">support@zeenyx.com</a> to obtain a copy. We are happy to discuss the finish phase requirements for your target application and will assist you with designing effective ‘Close’ methods.</p><div class="item_footer"><p><small><a href="https://zeenyx.org/b2evolution1/blog1.php/returning-the-target-application-to">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Introduction

The ‘start’ and ‘finish’ phases are essential components of an automated testing project. The ‘start’ phase defines what occurs before a test is run. The finish phase defines what occurs after.

AscentialTest is designed so that each test automatically has a start and finish phase. The start phase is mostly generated for the user through the App State wizards. The finish phase is left to the user. Recently we’ve discovered that many users are unaware of mechanics of the finish phase, so we decided to communicate best practices around the topic. This paper explains our intentions in designing the ‘Test’ class and how we envision the ‘OnFinish’ to be configured.

 The Test Class

Every test created in AscentialTest derives from a class called ‘Test’ as shown below:

Returning the Target Application  to the Base State

Because the ‘Test’ class is pretty much invisible, we all tend to take it for granted. When we click on the ‘Run’ icon in AscentialTest, we expect a test to run and it does because of the ‘Run’ method that is built into the class. But it isn’t just the body of the test that is being run. Every time a test is executed, the start and finish actions are also run.

Here is a brief explanation: When a test is executed in AscentialTest, the ‘Run’ method is called. The ‘Run’ method starts a timer and then calls another built-in method called ‘OnStart’. Most users are familiar with ‘OnStart’ because it is automatically generated by the App State wizards. In most cases, ‘OnStart’ includes the actions that launch and, if applicable, log in to the target application. Next the ‘Main’ gets called. The ‘Main’ includes all the steps and actions that make up the body of the test:

Returning the Target Application  to the Base State

If an exception is raised during the ‘Main’, another method called ‘OnException’ gets called. Its job is to report the exception to the Results Output. Whether or not there is an exception, the ‘OnFinish’ method finally gets called. We expect the user to configure ‘OnFinish’ to return the target application to a known state that we refer to as the ‘base state’. It’s typically the state of the application when it is first invoked, after any login has been completed.

‘OnFinish’ is accessed by using the dropdown located above the steps/actions area in the App State Editor:

Returning the Target Application  to the Base State

By default, ‘OnFinish’ is empty. That’s because the actions to return an application to its base state vary widely from application to application. It is not something that Zeenyx can provide universally. However we can offer guidelines and provide a function to help get you started.

 OnFinish

To ensure that tests run reliably, it’s important that they are independent of each other and that each test starts and stops at the base state as defined above. A well-designed test includes steps that return the target application to the ‘base state’, which usually entails closing dialogs that were opened during the test. When a test fails and an exception is raised, there is often a break in the flow of the test. Control is passed to ‘OnException’ to raise the error and the application is often left in a state where the current test transaction is incomplete. This is where ‘OnFinish’ is called upon to return the target application to the ‘base state’.

To make it easier for users to configure the ‘OnFinish’, we’ve created a new function called ‘CloseActiveWindows’ partially pictured below:

Returning the Target Application  to the Base State

‘CloseActiveWindows’ checks the state of the target application to determine if the application’s main window is active. If any dialogs or windows are opened, it attempts to close them. The built-in ‘Close’ action is called for each active window found. ‘Close’ attempts to click on the CloseBox (The ‘X’ in the upper right corner of a dialog) if it exists. Otherwise it types the <ALT-F4> keys. If the window is not successfully closed, ‘CloseActiveWindows’ takes additional steps to attempt to close it.

 A call to ‘CloseActiveWindows’ should be placed in the ‘OnFinish’ method of your App State as pictured below:

Returning the Target Application  to the Base State

The first parameter is the App Object name of the target application’s main window. The second parameter specifies the number of attempts that should be made to attempt to close any active dialogs.

 We recognize that many applications will require further action to return the target application to the ‘base state’. The recommended approach is to create a custom ‘Close’ action for each dialog or window that requires addition steps. If a ‘Close’ action is defined for an App Object, it is that custom action that will be called by ‘CloseActiveWindows’ instead of the built-in Close action. A simple ‘Close’ actions may require a click on an ‘OK’ button. A more complex ‘Close’ action might entail the actions required to complete the current transaction. The amount of ‘statefulness’ in a given application determines the complexity of the ‘Close’ actions that will be required.

 If you are reading this document, chances are that you already have ‘CloseActiveWindows’ in your possession.  If you do not, please contact us at support@zeenyx.com to obtain a copy. We are happy to discuss the finish phase requirements for your target application and will assist you with designing effective ‘Close’ methods.


Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
]]>
https://zeenyx.org/b2evolution1/blog1.php/returning-the-target-application-to#comments https://zeenyx.org/b2evolution1/blog1.php?tempskin=_rss2&disp=comments&p=29
Looking forward to Appeon Elevate 2018 https://zeenyx.org/b2evolution1/blog1.php/looking-forward-to-appeon-elevate Mon, 02 Jul 2018 19:53:00 +0000 zeenyxsupport Uncategorized 28@https://zeenyx.org/b2evolution1/
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
<p>We're looking foward to participating in Appeon's PowerBuilder user conference, Elevate 2018, to be held in Philadelphia November 5 - 7. We'll be showing off AscentialTest's support for the latest version of PowerBuilder and we'll also be reminding PB users why AscentialTest offers a powerful solution for building automated tests in the PB environment.</p> <p>AscentialTest provides testing support for PowerBuilder applications from PB v6.x right up to the most current version of Appeon PowerBuilder.  The Datawindow is recognized regardless of its presentation style (Form, Grid, Group, Tabular, etc.). The image below displays a Datawindow in the form of what we call a PbTable. It has rows and columns that can contain any number of control types (checkbox, popuplist, textfield, etc.). AscentialTest provides a special feature called a ‘selector’ which makes it easy to locate a row in a table based on a target value. In the picture below, the selector has located the third row in the table because it contains the test value ‘Table Management’:</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p28/pbselectorexample.png?mtime=1530560758" rel="lightbox[p28]" id="link_11"><img alt="Looking forward to Appeon Elevate 2018" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p28/_evocache/pbselectorexample.png/fit-400x320.png?mtime=1530560758" width="400" height="235" class="loadimg" /></a></div> <p>AscentialTest also recognizes the Datawindow in the form of what we call ‘PbForm’. Notice that the PbForm displayed below contains many different types of application objects including PbText, PbTextField, PbRadioGroup and PbCheckBox. These are only some of the control types that can be included on a form.</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p28/pbformexample.png?mtime=1530560755" rel="lightbox[p28]" id="link_10"><img alt="Looking forward to Appeon Elevate 2018" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p28/_evocache/pbformexample.png/fit-400x320.png?mtime=1530560755" width="400" height="288" class="loadimg" /></a></div> <p>Most PowerBuilder applications include tool bars with icons that represent application tasks. AscentialTest provides special recognition for those tool bar icons to make it easy to select them:</p> <div class="image_block"><a href="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p28/pbtoolbarsupport.png?mtime=1530560751" rel="lightbox[p28]" id="link_9"><img alt="Looking forward to Appeon Elevate 2018" src="https://zeenyx.org/b2evolution1/media/blogs/ZeenyxBlog/quick-uploads/p28/_evocache/pbtoolbarsupport.png/fit-400x320.png?mtime=1530560751" width="400" height="226" class="loadimg" /></a></div> <p>AscentialTest provides special object recognition features for the PowerBuilder objects including:</p> <ul> <li>PbCheckBox</li> <li>PbComboList</li> <li>PbComboTable</li> <li>PbCompute</li> <li>PbDataWindow</li> <li>PbPopupList</li> <li>PbPopupTable</li> <li>PbRadioGroup</li> <li>PbText</li> <li>PbTextField</li> </ul> <p> We hope that you will join us at Elevate this year. </p> <p> </p> <p> </p><div class="item_footer"><p><small><a href="https://zeenyx.org/b2evolution1/blog1.php/looking-forward-to-appeon-elevate">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>
Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

We're looking foward to participating in Appeon's PowerBuilder user conference, Elevate 2018, to be held in Philadelphia November 5 - 7. We'll be showing off AscentialTest's support for the latest version of PowerBuilder and we'll also be reminding PB users why AscentialTest offers a powerful solution for building automated tests in the PB environment.

AscentialTest provides testing support for PowerBuilder applications from PB v6.x right up to the most current version of Appeon PowerBuilder.  The Datawindow is recognized regardless of its presentation style (Form, Grid, Group, Tabular, etc.). The image below displays a Datawindow in the form of what we call a PbTable. It has rows and columns that can contain any number of control types (checkbox, popuplist, textfield, etc.). AscentialTest provides a special feature called a ‘selector’ which makes it easy to locate a row in a table based on a target value. In the picture below, the selector has located the third row in the table because it contains the test value ‘Table Management’:

Looking forward to Appeon Elevate 2018

AscentialTest also recognizes the Datawindow in the form of what we call ‘PbForm’. Notice that the PbForm displayed below contains many different types of application objects including PbText, PbTextField, PbRadioGroup and PbCheckBox. These are only some of the control types that can be included on a form.

Looking forward to Appeon Elevate 2018

Most PowerBuilder applications include tool bars with icons that represent application tasks. AscentialTest provides special recognition for those tool bar icons to make it easy to select them:

Looking forward to Appeon Elevate 2018

AscentialTest provides special object recognition features for the PowerBuilder objects including:

  • PbCheckBox
  • PbComboList
  • PbComboTable
  • PbCompute
  • PbDataWindow
  • PbPopupList
  • PbPopupTable
  • PbRadioGroup
  • PbText
  • PbTextField

 We hope that you will join us at Elevate this year.

 

 


Deprecated: Function create_function() is deprecated in /home3/zeenyxor/public_html/b2evolution1/inc/_core/_url.funcs.php on line 761

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300

Warning: preg_match(): Compilation failed: invalid range in character class at offset 119 in /home3/zeenyxor/public_html/b2evolution1/inc/_ext/_url_rel2abs.php on line 300
]]>
https://zeenyx.org/b2evolution1/blog1.php/looking-forward-to-appeon-elevate#comments https://zeenyx.org/b2evolution1/blog1.php?tempskin=_rss2&disp=comments&p=28