Blog

  • Automating alternate menus with Squish for Mac

    By on September 19, 2017

    The menus on macOS allow for a menu item to have an alternate version: if you press the “Option” key with an open menu, you see the alternate versions and can select them. For example the Squish addressbook example app has a menu item “Bring All to Front” in...

    Read more
    froglogic
  • Overview of the new file comparison functions in Squish 6.3

    By on September 12, 2017

    With Squish 6.3 we added two new file comparison functions. The objective is to make it easier to verify not just the application state but also the output an application might generate. Squish now offers a general comparison function test.compareTextFiles. This function can be used to compare any type...

    Read more
    froglogic
  • Enabling Squish to hook into Sub-Processes started by the AUT

    By on September 5, 2017

    Often more complex application do not consist of just a single executable. Instead the main application launches sub-processes which also open a user interface. Squish is designed in a way to also hook into sub-processes started by the main application under test (AUT). But depending on the platform and...

    Read more
    froglogic
  • Benefiting from combined usage of Squish and Coco

    By on August 29, 2017

    It is sometimes a good idea to use Squish GUI Tester and Coco in the same project. Squish runs the GUI tests, and Coco measures how much code they cover. A problem that often occurs is however that the instrumented AUT does not write any coverage results.

    Read more
    froglogic
  • Debugging Test Failures Using Your Favorite IDE

    By on August 22, 2017

    One goal of automated testing through Squish is to find bugs and regressions in your application. The cause for some test failures is easy to spot, other ones can be hard to debug. Squish already provides crash dumps when the AUT decides to give up, but in not-so-obvious cases...

    Read more
    froglogic
  • Squish Expert Tip: Java object mapping in Squish for Android (vs. Squish for Java)

    By on August 15, 2017

    The Squish for Java edition wraps all seen Java objects for access in test script with a type which name is the fully qualified Java name, dots being replaced by underscores. E.g. a java.lang.String Java object is wrapped as object with type java_lang_String. On such a wrapped Java object,...

    Read more
    froglogic
  • How to log exact mouse click positions within screenshot results

    By on August 10, 2017

    With screenshot verifications, a failed test run shows us the differences between the expected vs actual images, but in some cases, the actual image is missing, or is missing important information. . .  

    Read more
    froglogic
  • Testing Qt Application Manager applications with Squish.

    By on August 3, 2017

    Qt Application Manager (or appman) is a Qt module targeted for embedded devices. It allows you to create rich, Qt Quick-based user interfaces. The module exports an API that allows the Qt Quick GUI to act as a compositing display manager. It supports installing, removing, and life-cycle management of...

    Read more
    froglogic
  • Global initialization and cleanup functions

    By on July 25, 2017

    Squish offers a great way to separate the main body of your test case, initialization and cleanup parts. It can be useful in many cases, simplifies complexity and improves test case readability. In combination with some scripting it can reduce one of the worst enemies of maintainability – code...

    Read more
    froglogic
  • Finding & Fixing Dependencies Between Test Cases

    By on July 18, 2017

    Works for me! Did you ever hear yourself uttering those words, or maybe you heard them from a colleague? Tests which work on one system may fail on another. This can happen for many reasons: the application under test (AUT) depends on the operating system on which it is...

    Read more
    froglogic
  • Squish GUI Testing Case Study: Topcon Agriculture Group replaces manual testing with Squish Automated Tests

    By on July 12, 2017

    Topcon Agriculture Group makes a line of Console Displays, GPS systems running embedded Linux and software written in Qt. For 5 years, Topcon has been using froglogic Squish to develop and run almost 1000 automated tests against these devices saving their field testers a lot of time: “Within the first year...

    Read more
    froglogic
  • Keyboard shortcuts in the Squish IDE

    By on July 4, 2017

    Keyboard shortcuts Since the Squish IDE is based on Eclipse it has a lot in common with it, for example the keyboard shortcuts functionality. For me keyboard shortcuts are very important, because they are a way to… boost my productivity (perceived as well as actual – at least I...

    Read more
    froglogic
  • Using HTML5 data attributes in Squish/Web object names

    By on June 27, 2017

    One of the more challenging aspects of creating Squish tests is the generation of stable object names. The name to identify an object should ideally never match any other object on the screen. And using a name for identifying an object should not include data that is to be...

    Read more
    froglogic
  • Accessing a SQL database from your JavaScript Test

    By on June 19, 2017

    A common task in GUI tests is to automate entering some data into forms. To properly test and verify such scenarios, it is often necessary to interact with the database backend from the test. As an example, let’s take the evaluation form on our website and assume we’d like...

    Read more
    froglogic
  • Squish Tip: Using startSection/endSection to improve test result readability

    By on June 13, 2017

    Sections are especially useful for marking groups of related results in data-driven testing, and also for describing a hierarchy of test results, where simple log messages will simply not suffice.

    Read more
    froglogic
  • Approaches to creating BDD Scenarios

    By on June 6, 2017

    Behavior Driven Development uses conversations around concrete examples of system behavior to get a common understanding of features that are going to be implemented. This is the heart of BDD, as the quality of those examples affects the whole development process. How to organize this conversation in practice? There...

    Read more
    froglogic
  • Squish Tip: Silent verifications

    By on May 30, 2017

    Motivation The verification functions provided by Squish have built-in logging that can be augmented or customized, one of this customizations allows to silence the logging of test.vp() calls. In Squish the synchronization between the test script and the application is mostly done via the use of the waitForObject() functions. This means...

    Read more
    froglogic
  • Squish Tip: Customizing QtQuick support

    By on May 23, 2017

    Motivation Squish supports automating QtQuick 2.x based applications out of the box. One frequently asked question is about custom QML components or custom QtQuick controls and how Squish supports these. Testing QtQuick with Squish is very similar to Web testing in this regard. By default, Squish will record on...

    Read more
    froglogic
  • Squish Tip: Testing Tooltips on Windows

    By on May 16, 2017

    For many Windows controls (i.e. GUI components) Squish exposes the tooltip property. That property can be checked during a test execution using standard Property Verifications. But how can you check whether the tootlip is really displayed to the end users? You first have to trigger (i.e. display) the tooltip by...

    Read more
    froglogic
  • MC/DC Coverage and Short Circuit Explained

    By on May 9, 2017

    Modified Condition/Decision Coverage (MC/DC) is a code coverage metric that is referred to in many safety standards as the highest level of quality. It was first defined to provide an intermediate metric between condition and multiple-condition coverage for integrated circuits. Whereas plain condition coverage was considered too simple, the...

    Read more
    froglogic
Load More