Test Design Studio 4.0 Released

We are pleased to announce that Test Design Studio 4.0 is now generally available and can be downloaded here.

Splash.TDS4_thumb[4]

This release continues our push to re-architect and modernize the back end code of the application while also moving the front-end away from Windows Forms and toward Windows Presentation Foundation with a modern look-and-feel.  The tool windows for Output, Server Explorer, and Toolbox were all converted in this release.  Even the splash screen saw the first update since v2 with a flatter design.

Release Highlights

The following are some highlights from the 4.0 release

Naming Conventions

We’re very excited about this feature.  So excited, in fact, that it gets its own blog post!

Floating Document Windows

Those with multiple monitors know how convenient it can be to float your tool windows on a secondary monitor while leaving Test Design Studio on a primary monitor, but document windows were also bound to the main window.  Not anymore!  You can now drag the document tab outside of the main window to float it, or simply right-click the document tab and select ‘Floating’.  When combined with the long-standing ability to dock document windows side-by-side in the main part of the application, you now have a new tool to customize your view to see exactly what you want and where you want to see it.

Disable Code Analysis Rule from Context Menu

We love the code analysis feature, but sometimes a rule just isn’t a good fit for your organization.  You no longer have to dig through the options dialog to find the rule you want to turn off.  If it shows up in the Error List and you don’t want to see it, simply right-click and turn it off.  You can always turn it back on from the original Options dialog.

ALM Updates

Sometimes it’s the little things.  Many users were confused about how to get Test Design Studio connected to ALM or, even worse, didn’t know the feature was available.  The Server Explorer tool window, when not connected to ALM, should remove all doubt about the capability and how to get started:

image

We even redesigned the login screen with a friendly reminder that you must register the ALM Client for the integration to work properly:

image

We also removed the special feature called “Offline Mode”.  This was a carry over from functionality prior to TDS 3 where server connections were managed very differently, and it created a confusing interface.  You no longer have to enter “Offline Mode” to work with any files offline.  If you’re not connected to ALM, you’ll be in offline mode.  Simple as that!  We even added the option to have your credentials stored so that your ALM connection is automatically restored every time you launch TDS.

Now TDS even scans a project before you open it to look for any ALM files and will prompt you to connect to ALM before opening (with the option to cancel) so that you are not presented with errors opening the files.

Customer Upgrades

All customers with an active maintenance agreement will receive this upgrade at no change.  Users with a Seat License will need a new serial number for this version and it will begin with "TDS40-".  Users with a Concurrent License will not need to modify their License Server, but will need a new client license file to use along with the new version.

Please contact support@patterson-consulting.net if you are ready to upgrade and have not already received your new license.

New Feature - Naming Conventions

The feature we’re most excited about with TDS 4.0 is support for naming conventions.  Most of us work on teams that contribute to the same code base.  It is important that the unified product of that team’s effort be presented consistently no matter who contributed the code.  Choosing to name variables or functions a certain way can make your framework more cohesive and easier to use by everyone.

By default, Test Design Studio comes pre-configured for the most basic naming conventions around character casing for language elements.  These defaults are based on generally accepted industry norms for VBScript and include:

  • Variables and parameters start with lower-case letter and capitalize each new word.
  • Functions, subs, and properties start with upper-case letter and capitalize each new word.
  • Class names start with upper-case letter and capitalize each new word.
  • Constants use all upper-case letters with underscore between words.

The following illustrates a Sub whose name begins with a lower-case letter instead of upper-case

image

The violations for naming rules are displayed in the Error List along with any syntax errors and code analysis feedback.  Each violation is also underlined in the editor with green “squiggles” to draw attention to the oversight.

These default rules are a great start for naming conventions, but individual policies at your organization are likely far more complex.  Since every organization is different, we designed this feature from the beginning to be user-driven.  All naming conventions are based on a series of rules in an XML-formatted file.  We’ve provided a powerful set of criteria to help you define your individual conventions.  We’ve even provided a working sample of a much more complicated rules file that you can use as a template for your own rules (look at ‘CodeAnalysis\rules.sample.typePrefix.xml’ under the TDS installation directory).

Not only can you define different rules based on item type (e.g. Sub, Function, Variable), you can also define rules based on the content.  Do you name integer variables one way and boolean variable another way?  No problem!  Different convention for public vs. private items?  We have that, too!

You can change the location of the naming rules XML file in the same spot where you turn individual code analysis rules on/off by selecting “Tools –> Options” from the main menu.

image

While we’ve tried to prepare a solid foundation for the rules engine, we know our customers will be the truest test of when the feature is complete.  We fully support the functionality, but are releasing it under a “Beta” tag for now.  We’re confident in the core functionality for the default rules we have provided, but we need to hear from more customers about how they want to implement rules.

If you are unable to implement your naming conventions using our present rules engine, we want to hear from you!  Please contact us with examples of the rules you want to implement.  If we can’t make the current rules engine work, we’ll see what we can do to add the support your need.

We hope you enjoy this new feature, and look forward to hearing your feedback.

Test Design Studio Compatible with UFT 14

With the recent release of Unified Functional Testing 14, we are happy to report that Test Design Studio continues to be fully compatible with the latest version.  In fact, it doesn’t appear that the core GUI Test functionality has changed at all… and hasn’t for years!  That should speak volumes about how much this manufacturer cares about those who still write code for UFT, but that’s why we have Test Design Studio anyway!

We’ve Moved!

What Happened?

We woke up to a nice little surprise a few days ago… our web host of 10 years had mysteriously started turning off our servers!  First to go was e-mail delivery, and that’s what tipped us off to the problem.  It turns out our web host had migrated our account to a new platform a couple of months ago, but failed to tell us.  Not only did communication fall apart, their migration was a total failure.  They copied some files… that’s about all the credit they get.  None of our web services worked, the server was configured incorrectly, our database was empty, and their control panel tools were useless!

After juggling support from multiple contacts, we quickly realized this was a situation we never wanted to be in again.  We abandoned any effort to get our site working on their new platform and looked for greener pastures.  And boy did we find them!

A Brave New World

A lot can change in 10 years.  When it comes to technology, 10 years is like a lifetime.  Needless to say, the landscape has improved greatly!  We settled on building all new web apps on Microsoft’s cloud computing platform, Azure.  The service is amazing and highly recommended for anyone looking for web hosting.  We’ve also migrated our email handling to new Microsoft-powered cloud services, and everything is working great!

How Does This Impact You?

For the most part, there is no impact.  The same web address gets automagically ported to our new servers.  We’ve tried to re-write any old URL’s that were no longer valid, so those bookmarks will keep working.  Two important aspects did change, however.

We needed to relocate some of our web services into stand alone web apps.  This is a much better design, but does break compatibility with prior applications.  Most importantly, this impacts web-based license activation.  The “check for updates” feature will also stop working, but you will continue to get news alerts on the Start Page.

Test Design Studio v3.0.7020 and higher will support the new server, and you can download it now.  All users who have ever owned a license to v3.0 will be able to upgrade to this release even if your maintenance has expired.  **There is not an upgrade path for Test Design Studio v2.5 or prior releases!**  You will still be able to activate your licenses, but the activations will need to be performed manually.  Contact support@patterson-consulting.net if you have concerns about applying any legacy licenses or if you want to explore options to reinstate your maintenance.

The Concurrent License Server is also impacted by the change to the licensing service, and we will be working on a fix in the near future.  Concurrent licenses of Test Design Studio will continue to operate without issue on an already activated Concurrent License Server instance.  If you have immediate license activation needs, please contact support@patterson-consulting.net and we will make sure your request is handled.

“Out of Memory” Exception When Building Documentation

Overview

Some users may receive an error message about an 'OutOfMemory' exception while building documentation.  The error message will be similar to the following:

Unable to build documentation.  An error was encountered while merging XML documenation.  Exception of type 'System.OutOfMemoryException' was thrown.

This error is typical when large projects (or solutions with multiple projects) are being documented and the XML file that is generated for the documenter contains too much information.  To prevent the error, the size of the merged XML file must be reduced.

Solution

The primary solution is to remove source code from the generated document.  The inclusion of source code can cause signficant bloat to the size of the XML file used for documenting.

The Default setting is to include source code, so you will need to use the Custom setting to turn off the source code.  When using the Documenter Wizard, you will need to select 'Custom settings' on the 'Configuration Style' page.  On the 'General Options' page, you will then need to clear the box labeled 'Include source code' under the 'Other Settings' section.  This option is also available on the 'Documenter' tab of the Property Pages for the project.

Install and Configure Concurrent License Monitor

Overview

The Network License Monitor must be installed on a machine that will be accessible from other machines on the network that will need licenses managed by the Network License Monitor.  It may be installed either on a workstation or a server.

Installation Requirements

The Network License Monitor is built using Microsoft .NET Framework 3.0, so you must have that version of the framework or newer installed.  Any operating system that support that version of the .NET Framework may be used (i.e. Windows XP, Windows Vista, Windows 7, Windows Server 2003, Windows Server 2008, Windows Server 2008 R2, and newer versions of Client and Server OS).

A user with administrator access will need to be used to install the software and configure the license.  Elevated privileges will be required on operating systems with UAC enabled.

Installing the Software

The current release of the Concurrent License Monitor application should be downloaded from our Downloads page:

http://www.patterson-consulting.net/downloads/Default.aspx

To install the software, simply execute the ConcurrentLicenseMonitor.msi installer package and follow the on-screen prompts.

After the installation is complete, you will need to manually copy the license file (*.lic) to the installation folder of the Network License Monitor (i.e. C:\Program Files\Patterson Consulting\Concurrent License Monitor on 32-bit operating system, or C:\Program Files (x86)\Patterson Consulting\Concurrent License Monitor on 64-bit operating system).  Contact 'support@patterson-consulting.net' if you have not received your license file.  This file is typically called 'monitor.lic' or 'monitor.x.x.lic' (where the 'x' values represent a version of the monitor software, e.g. 'monitor.1.1.lic').

Applying the License and Verifying Functionality

To apply the license, you will need to start the Concurrent License Monitor GUI application.  You may do so by selecting the corresponding entry from the Program Files -> Patterson Consulting -> Concurrent License Monitor program files folder.

Upon launching the application, you will be prompted to register your software.  If you do not receive a registration prompt, your license is likely not configured properly or was not copied to the proper folder.

Complete the registration form by entering the serial number that was supplied along with your license and click Next.  This will display the activation screen.

The activation process will tie your serial number to the specific machine where you perform the activation.  In most cases, you may activate your software using our on-line activation server.  Otherwise, you will need to manually request an activation code.  Follow the prompts on the wizard interface to determine the 'Machine Code' for your installation.  E-mail that 'Machine Code' to 'support@patterson-consulting.net' and we will provide you with the corresponding 'Activation Code'.

Once registration is complete, you will see a log entry in the application indicating the status of the application monitor.  The log messages will include the TCP Port being used by the application and the details of the applications which are licensed to the monitor.  If you do not see this information along with entry 'Server Activated' in the log, your monitor is probably not working properly.  Ensure the TCP Port in the log is available for use.  Contact 'support@patterson-consulting.net' for additional assistance.

Changing the TCP Port

If you are unable to use the default TCP Port, you may change it.  Currently, the only way to modify the TCP Port is to edit the system registry.  Using a tool like 'regedit', locate the following registry key

HKEY_LOCAL_MACHINE\SOFTWARE\Patterson Consulting\Concurrent License Monitor

This key will have a string value called TcpPort.  Update the value in the registry and close the registry editing tool.  Stop/Restart the monitor using the Ribbon commands on the application and the monitor will use the newly defined port.

Firewall Protection

If your monitor is installed behind a software/hardware firewall, you will need to configure the TCP Port for access through the firewall.  Without access, clients will not be able to request a license.

Configuring the Client

You will be provided a license file for each client that will connect to the license monitor.  Follow the license instructions for the client to apply the license file.  When prompted, enter the name of the host running the network monitor and the TCP Port that has been configured for use (Default = 8085).

With the Concurrent License Monitor application running, attempt to launch a client application that is managed by the monitor.  The log will display connection attempts and license validation data.  If no request information is displayed in the log, verify the following:

  1. The client has been configured with the concurrent license file
  2. The client has been configured with the proper host name and TCP Port
  3. A firewall is not blocking the TCP Port on the server or the client

 

For more details on configuring the Client, refer to the following Knowledge Base article:

http://www.patterson-consulting.net/blog/post/Configure-Client-for-Concurrent-License

Installing Monitor as a Service

While the Concurrent License Monitor application provides some useful information about the activity of the monitor, it must remain running for clients to be able to request a license.  In most cases, the application is used to verify the monitor is running properly.  Once proper operation is complete, you may install the application as a Windows Service.

To install the service, select 'Install Service' from the Program Files group where the Concurrent License Monitor was setup, or execute 'InstallService.bat' from the application installation folder.  This will configure Windows to recognize the service.  The service will be listed as Patterson Consulting Concurrent License Monitor.  You will need to start this service in order to process license requests.  If necessary, contact your Windows administration group for details on configuring a service to start automatically and/or use a specific account for authentication.  If you ever experience issues processing licenses from the service, stop the service and launch the GUI-based application.  The log data in the application will help debug the issue.

Uninstalling Monitor as a Service

To uninstall the service, select 'Uninstall Service' from the Program Files group where the Concurrent License Monitor was setup, or execute 'UninstallService.bat' from the application installation folder.

HTML Help Compiler Error HHC6003

Some installations of the HTML Help Compiler will report the error code HHC6003 referencing file itircl.dll. In fact, QuickTest® Professional has a documented issue where this error is often received after installing QuickTest® Professional. This is typically caused by the itcc.dll file being missing or improperly registered. Check if the following file exists on your system:

C:\Windows\System32\itcc.dll

If it does not exist, use the links above to download and re-install the HTML Help Workshop. If it does exist, it probably just needs to be re-registered on your system. You can re-register the file by executing the following command from a Command prompt or the Run window.

regsvr32 C:\Windows\System32\itcc.dll

Note:   The exact path to the itcc.dll file may vary based on your system configuration.

Configure Client for Concurrent License

Overview

Test Design Studio offers a concurrent license model.  Under this model, you configure a Concurrent License Monitor application that is responsible for tracking the total number of licenses that are in use.  Each Test Design Studio client is then configured to request a license from the monitor application.  The steps below define how to configure the license.

Information You Need

In order to connect to the Concurrent License Monitor, you will need to know the host name of the monitor as well as the TCP port number that has been configured to listen to license requests.  The default port number is 8085.  You will also need a license file that was distributed to your company for use with the concurrent license monitor.  This file is typically called 'tds20.concurrent.lic'.
In summary, you will need:

  • Host Name of Concurrent License Monitor
  • TCP Port Number
  • License File

Step 1 - Install Test Design Studio

Install the latest release of the Test Design Studio application for which you have a license.  The same installer is used for any of the license models.  After installation is complete, launch Test Design Studio.

Step 2 - License Wizard


When you launch Test Design Studio without a license already configured, the License Wizard will be displayed.  Click the 'Next' button to continue.

Step 3 - Choose Your License Model


For the concurrent license model, you will be configuring the License File that was provided to your oganization.  Select the option for 'I Have a License File to Apply'.

Step 4 - Apply License File


In the space provided, specify the full path of the License File that was provided to your organization.  You may use the 'Browse...' button to help locate the file.  When the full path has been entered, click the 'Next' button to continue.

Step 5 - Concurrent License Configuration


Since your license file is based on a concurrent license model, you will need to provide the 'Host Name' and 'TCP Port' that correspond to your Concurrent License Monitor.  When the information has been entered, click 'Next' to continue.

Step 6 - License Validated


If all the information has been correctly entered, you will receive a 'License Validated' confirmation.  If you do not receive this confirmation, confirm that you entered the correct 'Host Name' and 'TCP Port' for your Concurrent License Monitor.

 

Blocked HTML Help Files

Overview

Since HTML Help files use HTML technology, there is a potential security risk opening and displaying the HTML content. Most newer releases of Internet Explorer will only allow you to open the file if it is stored locally on your machine (not on a remote drive). Unfortunately, the HTML Help system does not provide a meaningful error message.

When a file is being blocked, you will typically see a screen similar to the following:

To open the file, you will either need to copy it to your local hard drive or, if supported, unblock the file.

Unblocking a File

If supported by your system, you may be required to unblock a file before it can be viewed. To unblock a file, right-click the file icon and select Properties to display the Properties dialog for your file.

If your system supports it, you may see an Unblock button. Click this button to unblock the file.

Test Design Studio Highlighted on Test Talks Episode 103

If you are not already following Joe Colantonio's excellent automation podcast called Test Talks, Episode 103 is a great place to start.  This podcast featured noted automation expert and "Dark Arts Automation Engineer" Paul Grossman, and we were honored that Paul mentioned Test Design Studio and this company's founder, Boyd Patterson, in his list of mentors and recommendations.

What exactly did Paul have to say?  He highlighted Test Design Studio’s unique static code analysis feature for VBScript saying “Nobody else has that!  I’ve Googled it.  It’s not there.”  Thanks, Paul!  We’ve Googled it, too, and have to agree.

You can read more about static code analysis in Test Design Studio here if you want to see what has Paul so excited.

As our way of saying thanks to both Joe and Paul for this mention, we’re giving away a FREE seat license of Test Design Studio!  All you have to do to enter:

  1. Listen to Test Talks Episode 103
  2. Leave a comment at the bottom of the episode 103 page
  3. Joe will randomly pick someone from the comment list on June 20, 2016 to receive the free license (extended from previous date of June 13)

 

The seat license includes 1 year of maintenance and support and can be used for personal or commercial use.  The only restriction is the license cannot be sold or transferred.  Good luck!