Decades of Leadership in the Software Testing Industry

AscentialTest has been forming in the minds of our founders for several years. After building QA Partner/SilkTest at Segue Software in the 90s, they got the opportunity to use their product extensively in the field. As consultants implementing test automation with various tools for more than 10 years, they’ve formed a thorough assessment of the state of the field. What they found surprised them: automated tests were too expensive to build.

Furthermore, the requirement for programming skills to move beyond the superficial tests that can be recorded left out too many members of the team. They also discovered that a large portion of test development time is spent ‘writing code’ to workaround object recognition deficiencies. Some users estimate that time to approach 80%. Clearly this explains why the decision to adopt automation is not always straightforward. With a fresh understanding of the challenges and our heads full of ideas, we’re energized and excited to bring about the next paradigm shift in test automation.

Brian has been working in the field of test automation for more than 30 years. Brian began as a QA Engineer using the testing tools available in the early 1980’s. He joined Segue Software in its infancy and served as the EVP of R&D during that company’s golden years. Brian formed Star Quality, a consulting firm specializing in test automation in the late 90s. After 12 years of experience in the trenches, he’s excited to be building the next generation testing tool that will increase the productivity and and effectiveness of test and development teams.

Dave is a pioneer in the field of automated testing. Dave developed ATF, one of the first automation tools, more than 20 yeas ago. He was a founder and Chief Architect of Segue Software, Inc., the original creators of QA Partner/SilkTest. Dave believes that no testing tool can be easy to use without a solid foundation. That’s why he is committed to providing AscentialTest’s universal agent with the most powerful object recognition engine in the industry.

Pricing Plans - Solo Testers to Large Enterprise Teams

Not seeing a pricing package that fits your needs? Want to compare us directly to a competitor’s offering? Tell us more, let us take a shot at providing a custom or lower cost package.


Solo Testers

Starting at $200/mo

“The Selenium Killer”



Starting at $380/mo



Starting at $6k/mo

Perpetual License


Starting at $8.4k

Perpetual License


Other Resources

Upcoming Webinar

Building Reusable Verification Tests

Tue, Jun 25, 2024 10:00 AM - 11:00 AM EDT

The participant will learn:
* How indirection and dynamic instantiation are used to build generic test steps
* How to create universal verification steps and functions
* About built-in functions that provide information about the current state of the target application
* How metadata can be used to set object-related test data
* How to create a test that walks the main menu of an application, opening and closing each dialog

See How We Achieved an 83% Five Star Rating on Gartner

See how AscentialTest compares to the competition, using 18 key features and functions and across 14 different development platforms

  • Supported Platforms (14)
  • Integrated Test Planning
  • Object Recognition
  • Object Repository
  • Test Frameworks
  • Foreign Language UX
  • Drag Generations of Actions
  • Reusable Steps
  • Scripting
  • Manual Testing
  • Parallel Execution
  • Integrated Defect Tracking
  • Test Localization
  • Test Portability
  • Test Management
  • Test Execution Management
  • Integrated Version Control
  • Integrated Test Management


Gartner 5 Star Reviews:

0 %


Gartner 5 Star Reviews:

0 %


Gartner 5 Star Reviews:

0 %

Ranorex Studio

Gartner 5 Star Reviews:

0 %



Zeenyx Academy

PowerBuilder App Testing: What To Know, Which Tools Work

Print Friendly, PDF & Email

It Starts with Recognition of the DataWindow

As the PowerBuilder community knows, the datawindow is the foundation of all PB applications. It can be rendered in an array of presentation styles including Composite, CrossTab, Form, Grid, Group, Label, N-Up, Tabular or Tree. It’s a complex windows element that presents data stored in an underlying database. Its data cells can contain any element type, including but not limited to PopupLists, RadioLists, Static Text, Edit Fields, etc.

Those Pesky Record Location Changes

The dynamic nature of the datawindow provides a challenge for automated testers. The relative location of a record changes as data is modified through the application under test (AUT). Running a test that adds a new data entity to the database can change the row position of any other record.

The PowerBuilder Community Asks Us To Create an Extension

Because of the challenges they faced using existing testing tools with the Datawindow, a group of organizations who use PowerBuilder reached out to us a decade ago and asked whether we would consider building a PowerBuilder extension. They expressed frustration with trying to automate a complex element by using images and keystrokes to blindly navigate through the constantly changing datawindow grid. Smartbear claims to have had support for PowerBuilder at one time but it appears that reached End of Life with PowerBuilder 12.

Working with Sybase

Upon receiving the request, we contacted Sybase, then recently acquired by SAP, and found that they were more than happy to help us by providing access to software, documentation and technical support. We also found that the TestAPI had been well designed and is quite compatible with our approach to object recognition. As far as we know, we are the only testing tool vendor that embraced the TestAPI which continues to be maintained today by Appeon.

The Challenge For Existing Testing Tools

It is certainly possible to use workarounds to create test automation for the datawindow using tools like Ranorex, Test Complete or Tosca. One approach is to position the cursor in the first cell of the first row in the table. With that cell location as an anchor point, any other cell in the table can be reached with a series keystrokes like <DOWN> and <TAB>. Once the cursor is positioned in the cell, its value can be captured or modified. To get the value of the cell, send the keystroke combination ‘<Ctrl-a><Ctrl-c>’ to copy the text in the cell to the clipboard, from which it can be retrieved and verified. If the objective is to edit the value of a cell, send the keystroke combination <Shift-End-Delete> to remove the current text and then send the keystrokes to input the text of the new value. The limitation to this approach is that it assumes that the target cell will be in the same relative location at runtime as it was when the test was created. If a record is removed or added and the row number of the target row has changed, then the test will need to be modified to reflect the new position.

The Only Testing Tool Recommended by Appeon

By hooking into the PowerBuilder TestAPI at runtime, AscentialTest has built-in object recognition for all of the components of the data window, regardless of its complexity and dynamic nature. The foundation of AscentialTest object recognition is our patented ‘Snapshot technology’, a smart image which displays a document-object-model of object hierarchy and attributes. The image below displays a snapshot of a data window in the form of what we call a PbTable.

Notice that AscentialTest recognizes the rows, columns and elements in each cell. 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 example above, the selector has located the second row in the table because it contains the test value ‘Triggers and stored procedures”. The selector will find the row at runtime regardless of its position in the table, even if it needs to scroll the row into view.

AscentialTest Table Interface

In addition to datawindow recognition, AscentialTest provides a table interface that allows the user to easily verify, select and set table elements in the AUT. Through interacting with the ‘Actions Panel’ and drag and drop, the following types of test actions are automatically generated:

  • Verify the contents of a table
  • Verify the contents of a row
  • Verify the contents of a column
  • Get the number of rows
  • Get the number of columns
  • Select a row/column
  • Set the value of an element embedded in a column (TextField, PopupList, RadioList, etc.)

Here are a few examples:


The image below depicts a snapshot of a PbTable with customer information.

Verifying the contents of a row

To verify the contents of a row, all the user needs to do is select the ‘Verify’ radio button in the Actions Panel along with the ‘Values’ property. The row can be specified using a row index or string selector:

AscentialTest auto-generates the test action:

Selecting a row/column in a table

To select a column in a row, the user selects the ‘Event’ radio button in the Actions Panel and specifies the row using either an index or string selector.

AscentialTest auto-generates the test action:

Setting the value of a control embedded in a table cell

Table cells often contain input elements like TextField, PopupList, RadioList, etc. The example below displays a PbTextField inside of a PbColumn in a PbTable:

To set the value of an input element in a table cell, the user selects the ‘Set’ radio button in the Actions Panel and specifies the row using either a selector or an index.

AscentialTest auto-generates the test action:

It’s that easy!

Comprehensive Support for All Things PowerBuilder

AscentialTest provides comprehensive automated testing support for all the components of a PowerBuilder application including the database, using our built-in ODBC driver, Rest and embedded GUI components including DotNet (Winforms or WPF) and web pages using Chrome or Edge (MSWebview2). AscentialTest provides PowerBuilder automated testing support for applications from PB v6.x right up to the most current version of Appeon PowerBuilder.

Cross-platform tests for PowerBuilder, PowerServer and PowerClient

Whether your application is running from within the PowerBuilder IDE, deployed as a windows client or through PowerServer or PowerClient, your automated tests will run without change in any of these environments – one set of tests across all of your PowerBuilder platforms.

Due Diligence

If you are using a testing tool for PowerBuilder that does not utilize the TestAPI or were not aware that a PowerBuilder testing tool was available, check out the reviews from some of our customers on Gartner Peer Insights and consider starting a free AscentialTest trial.

Start a 6-Month Free Trial

Share the Post:

Related Content

Instructional Content, Thought Leadership

It’s Finally Here: Automated Testing for Custom Elements

Instructional Content, Thought Leadership

A Thousand G2 “Dislikes” (Part 2): Testing Tools Have Speed Issues

Instructional Content, Thought Leadership

A Thousand G2 Reviews Later: Software Testing Tools Are Too Expensive

Instructional Content, Thought Leadership

Build Tests, Not Frameworks

Get Started Today: 6 Month Free Trial

Click here to download the Host ID generator. The download package includes full instructions. Please send us your details below to speed the process along.

Get a Competitive Quote

Our Distribution and Consulting Partners



Loop Software


Matryxsoft Tech


OCS Consulting


What We Are Up To Next

TFS/Azure Integration

Check our new Azure extension for executing AscentialTest command lines in the Azure Marketplace.

We look forward to offering additional integration with Microsoft’s Team Foundation Server and Azure through defect tracking and version control soon.

Omnis Studio

Automated testing support for OMNIS Studio is coming soon. All OMNIS elements will be supported including complex grids, list boxes, tables and tree views.

Custom Objects

Add automated testing support easily for your custom application elements by responding to simple test API messages with json strings. This feature will open up the possibility of testing any GUI element and  will be offered free of charge.

Test Debugger

Set breakpoints in your automated tests, view global and local variables and execute statements to make it easier to debug tests running on any of our supported platforms.

Thank you for submitting your inquiry!

We will get back to you ASAP.  We aim to respond to all inquiries within 24 hours.