Blog

  • Define your own Symbolic Names

    By on February 21, 2017

    Usually when Squish adds an object to the Object Map, Symbolic Name is created as a combination of its properties (e.g. caption and type of the selected object). Thanks to that, most of the time it’s easy to identify objects behind these names. However, there are cases where it is not enough. We would like to show you a different approach of defining your own Symbolic Names, even before you start to write your first functional test case. On the image below you can see an “Address Book – Add” dialog from our example application – Addressbook. Here is a list of Symbolic Names of objects located in this dialog. :Address Book - Add.Cancel_JButton :Address Book - Add.Email:_JLabel :Address Book - Add.Email:_JTextField :Address Book - Add.Forename:_JLabel :Address Book - Add.Forename:_JTextField :Address Book - Add.OK_JButton :Address Book - Add.Phone:_JLabel :Address Book - Add.Phone:_JTextField :Address Book - Add.Surname:_JLabel :Address Book -...

    Read more
  • More Useful Squish Test Reports

    By on February 15, 2017

    Test reports matter. Especially so when something goes wrong because Squish detected a failing verification during test execution. When a test fails, it’s typically interesting to figure out why a test failed (except if you’re fine with just ignoring the result). The first step to figuring out why something went wrong is to figure out what went wrong, and that’s where a good test report shines.

    Read more
  • The Squish Jenkins plugin now supports Pipelines

    By on February 6, 2017

    As we received a lot of questions about using the Squish Jenkins Plugin in Pipeline jobs, we now introduced a solution for that. Starting from the version 7.0 of the Squish Jenkins plugin support for Pipelines is available. If you are interested in short tutorial please read the Knowledge Base article. More information can be found in the Squish Plugin documentation.

    Read more
  • Overriding Squish functions

    By on February 1, 2017

    Motivation There may be cases where one wants to change the behavior of the functions provided by Squish. For example, even though the default timeout of waitForObject() is 20 seconds (which usually is enough for a GUI control to be “visible and enabled”), in some rare cases one may find that this is still not enough time. One would usually handle such cases individually by adding a second parameter to the respective waitForObject() call, which stands for the desired timeout in milliseconds: // Let's wait for up to 40 seconds for ":x": waitForObject(":x", 40000); But, what if there are many more places where such a change would needed? Then we would have to go through our script, adding the timeout parameter to all the other desired waitForObject() calls, which can be a very tedious and error prone task. Also, we may not even know in advance where these longer...

    Read more
  • Breakpoint marker with Backslash

    Help! Squish Does Not Stop At Any Breakpoint Anymore

    By on January 25, 2017

    In the more recent past, we had a few incidents where customers and even colleagues found out how to disable the breakpoints in their test scripts in the Squish IDE. Unfortunately, they did not really notice how they were doing this and hence needed a little help to re-enable the breakpoints. So we will now have a look at how it looks like when this feature is active, how the breakpoints can be enabled again and what possible uses this feature has. How do I know that my breakpoints are all disabled? The sidebar of the editor shows the breakpoint markers with a blue backslash on top, similar to this screenshot: This backslash indicates that a feature of the IDE (or rather of the underlying Eclipse framework) has been used to disable all breakpoints.

    Read more
  • Code completion

    Upcoming feature “script-based object map”

    By on January 18, 2017

    Upcoming feature: Script-Based Object Map In July 2016 two blog articles presented an alternative script-based Object Map approach for advanced management of object names. The idea is to use script language variables instead of string-based Symbolic Names for object look-up and interaction functions. As shown in the examples below, language specific dictionaries with wildcard and regular expression support are used to define the properties of object names and since the Object Map is written in the same language as the tests, Squish IDE features like code completion, jump to definition and refactoring make usage of object names quite simple. In one of the next Squish releases the script-based Object Map will be supported for all five script languages, including these main features: Recording Playback Script framework for “home brewn” Object Maps How will it look like? Here are small examples for Ruby and JavaScript: Ruby objectmap.rb Address_Book_MainWindow = ObjectName.new({:type...

    Read more
  • Execute tagged scenarios in Maven

    By on January 16, 2017

    Recently released Squish GUI Tester 6.2 allows for Test Case tagging. It was already possible to tag Scenarios in BDD Feature as well. We have just released Squish Maven plug-in version 4.3 which allows to execute only tagged Test Cases or Scenarios. More information: Knowledge Base Article Maven plug-in documentation

    Read more
  • Squish Tip of the Week: Verification of Text Colors

    By on January 4, 2017

    A common thing tests like to verify is whether text has a certain color. If you wish to avoid screenshot comparisons, then the way to do this differs depending on the toolkit and the API you are using to present text to the user. This article will explain some of the different ways text can be presented, and how to verify their color in a test case.

    Read more
  • Merry Christmas 2016

    Merry Christmas 2016

    By on December 21, 2016

    A very successful year at froglogic comes slowly to an end. This year has been successful in may aspects for us. On the business side, we have increased our revenue by 14% compared to 2015 by winning several new customers as well as appreciating continued business from our existing customer base. Since we care a lot about our users being successful with Squish and Squish Coco, this year we have re-invested parts of our profit into increasing our technical support team. This also shows in the support & updates subscription renewal rate: 89% of our customers renewed their support & updated subscription this year which is the best we have ever seen. A big thanks to you, our loyal customers! So we would like to take the opportunity to thank all our customers and partners for the trust and confidence in our work and look forward to the successful continuation of...

    Read more
  • Website Location Guide After Changed Permalink Structure

    Website Location Guide After Changed Permalink Structure

    By on December 14, 2016

    With the new release of our website most of the existing links have changed. This was (unfortunately) necessary to improve the aesthetic, usability, and forward-compatibility of our permalink URL structure. The good news is nothing is lost, and all information of Squish & Automated GUI Testing is still just a finger tip away. Listed below you will find some main entry points to our products and services and other useful resources.

    Read more
  • Irritating folding collapsing of comment lines in Squish python editor

    Squish tip of the week: How to get around folding/collapsing comment lines while editing comments in Python

    By on November 2, 2016

    Lately, there was a support question regarding folding/collapsing comment lines while editing comments in Python. If one tries to comment tests in Python, the Squish IDE folds or minimizes the comment while writing. In some cases this is unpleasant and time-consuming even if one subsequently clicks the small “+” icon to expand the comment. We are aware of this “feature” and on the way to enhance this for a more pleasant use. Meanwhile, there is a simple solution for that.

    Read more
  • Code Folding Expand and Collapse Code in Squish

    Squish tip of the week: Code Folding – Expand and Collapse Code in Squish

    By on October 19, 2016

    What is Code Folding Code folding is the ability to expand and collapse certain code in programming constructs. This improves readability when a test script contains numerous functions or other blocks of code and comments that you want to hide when you are not currently working with that part of the file. How to Expand and Collapse Code in Squish You can collapse and expand code fragments in Squish so that you can view different sections of your test script without having to use the scrollbar. To expand or collapse code, click the plus or minus sign that appears to the left in the test script editor. To expand or collapse all of the code, place your cursor anywhere within the test script, right-click, and then select “Expand All” or “Collapse All“.   Example of expanding and collapsing Code in Squish (click to enlarge)

    Read more
  • squish programming languages

    What Programming Language to learn for Test Automation

    By on October 12, 2016

    Many companies are moving away from hiring pure manual testers and prefer testers with test automation skills. Learning a programming language will get you started with test automation. Not only that testers can speak the same “language” as developers, they will understand better what developers do and get a better appreciation of how complex development is. Further, a tester can do unit testing and participate in code reviews. Programming languages come in all shapes and sizes, and each language has pros and cons for software testing hence it really depends on which one to learn on the testing situation and what one is trying to accomplish. Some factors that might help to make a decision what programming language to learn for Test Automation:

    Read more
  • Squish tip of the week: Object Not Found Dialog

    By on October 5, 2016

    When does the Object Not Found Dialog appear? The object not found dialog automatically shows up during the execution of tests in the Squish IDE if a “waitForObject” command runs into a specified (or default) timeout. Furthermore, the dialog will show the error message generated for the lookup error and the object name for which the lookup was executed.

    Read more
  • Advantages of Automated GUI Testing

    By on September 28, 2016

    Manual vs. Automated Testing has always been a point of debate among software professionals but what are really the benefits of Automated Software Testing you may ask. What exactly is Automated Testing? Essentially, Test Automation is using code to create a program that performs automated tests for your software. The difference to manual testing is instead of actually performing the test one creates an automated testing scenario and is supervising it. Test automation is, therefore, most commonly used for regression testing, which seeks out new bugs in a program and separates them. (Regression tests are very tedious and time-consuming) One other area of code-driven testing is user simulation to replicate typical user interaction using automated keystrokes and mouse clicks where the software GUI response is recorded and analyzed. Keys to Automated GUI Testing and Continuous Integration There are certain factors and keys to successful automated GUI testing and continuous...

    Read more
  • Open source C++ execution trace framework

    By on September 15, 2016

    At froglogic, we’re big fans of open source software. A large part of our engineering (and management!) staff contributed or contributes to open source projects, and everyone visiting our offices for a job interview certainly gets a big +1 in case she can show off some open source work! We also use a lot of open source software for our daily work, ranging from obvious projects like Git or the Linux kernel to individual libraries serving very specific purposes; the Acknowledgements Chapter of the Squish manual gives an impression of how tall the giants are upon whose shoulders we’re standing. Over the last couple of years we contributed back various bug fixes and improvements to different projects we’re using, but we’d like to step things up a little bit. Hence, we now open-sourced an internally developed C++ framework called ‘TraceTool’ and made it available under the LGPL v3 license...

    Read more
  • Squish 6.1 Release with Visual Verification Points

    By on September 13, 2016

    About twelve months after the release of Squish 6.0, we are proud and excited to make available Squish 6.1 which delivers several new features including: * Visual Verification Points * Window and Screen API * QtWebEngine support * Improved Squish installer

    Read more
  • Squish tip of the week: Automating Multiple Applications with Multiple Squish Installations or Editions

    By on September 7, 2016

    Did you know that it is possible to use multiple Squish editions in a single test script? The following example describes the setup and workflow for such scenario utilizing Squish for Qt and Squish for Web. Install Squish for Qt. Install Squish for Web. Create a Squish for Qt test suite with the Squish for Qt IDE. Create a Squish for Web test suite with the Squish for Web IDE.

    Read more
  • Squish tip of the week: Automation Setup on Windows

    By on August 24, 2016

    There are situations in which test scripts will hang and time out on Windows while executing. Most of this cases involve the lack of drawing/painting the application on the “screen”. The underlying problem is that if the GUI of the application cannot be rendered, its objects do not have coordinates on the screen and testing software, like Squish, cannot find out where to perform a mouse click. “The AUT did not respond to network communication” would be one indication of a test script execution problem in the error log.

    Read more
  • QtCon: Squish for Qt Training in Berlin

    By on August 23, 2016

    On September 1st, as part of the QtCon conference, our partner KDAB hosts a day of training. This training day allows you to gain knowledge in several Qt-related topics, including automated Qt GUI testing with Squish for Qt. froglogic‘s ISTQB-certified Senior Software Trainer Florian Turck will conduct the full-day Squish for Qt training and share his in-depth experience of effectively using Squish. Seats for the training are still available. Register for QtCon here: https://conf.qtcon.org/en/session/new?conference_acronym=qtcon

    Read more
Load More