testdriven.com Wrangling quality out of chaos

Archive for the ‘Advisories’ Category

Lessons Learned from the October 2013 SF Selenium Meetup

Lesson 1: When creating single-page applications in JS, its really worth it to do a thorough job of unit testing, because the same tests can be used to test the compatibility of your code across various browsers.


Lesson 2: Don’t fall into the pitfall of a slow build. Design your infrastructure and your tests to be parallelizable from day one. This relatively small investment upfront will save you years of anguish in the future trying to fix your Test Technical Debt.



Knowing your Enemy – Foundations of LiquidTest

02.27.2010 · Posted in Advisories

Anthony Scotney blogs about the principles LiquidTest was founded upon:

“There is a great article by 37signals called ‘Have an Enemy’. By knowing your ‘enemy’, you know what you don’t want to be. This is pretty much how LiquidTest was conceived. We knew there were problems in the Test Automation space and we knew there were a lot of questionable practices by some of the established players in the space…”

To read the entire article visit: http://www.jadeliquid.com/blogs/2010/knowing-your-enemy-foundations-of-liquidtest.php

Automation support for Exploratory Testing

11.01.2009 · Posted in Advisories

From http://tech.groups.yahoo.com/group/aa-ftt/ mailing list:

I attended Michael Bolton’s session on exploratory testing a few years ago and it’s fair to say it inspired me, even though my job duty specifically is as an automation guy. I built a series of Ruby modules to allow our exploratory testers to use the Ruby IRB, in combination with Watir, to make their exploratory testing more efficient.

Have there been any (or many) presentations specifically on this? I thought it might make a nice 40-minute presentation to show how you can create helper modules and have them auto-loaded when you load the watir-console, and then use them to help with ET. Some ways we’ve used a helper method for the watir-console are:

– Allowing the user to go to a specific spot in the web application by calling a single method.
– Calling a method with an integer as a parameter to tell it to do something multiple times
– Calling a method with a list as a parameter to send a collection of values to a method (such as creating users with specific names).

Anyway…does this sound like something that would be of value? Or too elementary? I’d love some feedback.



TestRail Test Case Management Software introduced

09.07.2009 · Posted in Advisories

Gurock Software is introducing their upcoming test management software TestRail. TestRail is intended to help software development teams and quality assurance departments manage test cases, track test results and organize software testing efforts. Gurock Software is still looking for additional beta testers who are interested in taking a look at the new tool, which is scheduled for release in Q3 2009. The first details and screenshots of TestRail are available on Gurock’s website.

Automated GUI Testing: ETM, a Siemens Company—Squish for Qt users since 2007

05.31.2009 · Posted in Advisories

We spoke to Wolfram Klebel, one of ETM’s development and testing engineers, and asked him what products ETM tests with froglogic’s automated GUI testing tool Squish.

ETM use Squish to test their SCADA (Supervisory Control and Data Acquisition) software—PVSS. This software is used for controlling complex industrial and infrastructure systems including traffic tunnels, water treatment plants, subway systems, and the new particle accellerator at CERN.

Read the full story at http://www.froglogic.com/pg?id=ReferenceCustomers&category=Squish-Success-at-ETM

New job and a good book

05.31.2009 · Posted in Advisories

Dear Friends,

I am happy to announce that I have taken a job at Guidewire Software. Guidewire is a unique company that takes quality and testing very seriously and has been able to attract some of the best TDD practitioners in the Silicon Valley. I am looking forward to learning much from them.

In preparation for my role on the testing team, I have been re-reading Goiko’s Bridging the Communications Gap book. I consider this a special book because in addition to the requisite coverage of the latest tools and techniques this book also vividly reminds and inspires us to never forget that clear and accurate communication is the bedrock of any quality initiative. His anecdotes from various fields of endeavour clearly illustrate the fact that accurate communication is a problem as old as our civilization and has to be dealt with appropriately before any team can succeed in its mission.

Automated GUI Testing: Q1 Labs – Squish for Web users since 2007

03.15.2009 · Posted in Advisories

Q1 Labs is a global provider of high-value, cost-effective, security information and event management (SIEM) products. They have been using Squish since late 2007 to test the Web UI of their entire QRadar-branded family of products.

Q1 Labs products are web applications that use JSP to render HTML pages with JavaScript used for dynamic elements. Their test automation takes place on several Windows virtual machine images, and using the browsers they support, such as Firefox.

We spoke to one Q1 Labs’ QA Engineers, Chris Fredericks, and asked him about their experience of using Squish.

Why Q1 Labs is using Squish

Q1 Labs first learned about Squish through web research. Chris told us that:

We were already using a GUI test automation tool but we were not happy with it, nor with the direction its development was taking. This made it essential for us to find a new tool that would suit our needs.

Several factors were influential in Q1 Labs’ decision to choose Squish over competing products. Chris summarized some of them for us:

"We wanted scripting support, and Squish provides this with its support for four well-known and highly supported scripting languages. Some of the other tools we considered either provided their own proprietary scripting language, or no scripting support at all."
"We also liked Squish’s approach to interacting with the AUT via scripting—it seemed the most logical way. And in our case we chose to use JavaScript, since we already had a lot of experience with that language."
"We needed the flexibility to automate our testing, and Squish made this easy with its command line tools. We currently use our own in-house batch running and reporting tool, and it was easy to plug Squish script execution into our framework."
"We like to get value for our money—and we felt that Squish’s pricing met this requirement."

We asked Chris more generally about Q1 Labs’ experience with using Squish, starting with the feature they found most useful:

"Given that our product contains quite a lot of data tables we would have to say that the inclusion of XPath has been a huge advantage for our automation effort."

Squish’s support for XPath allows Squish/Web testers to perform XPath queries on arbitrary elements in HTML documents. (XPath is a standardized XML querying language that many consider to be more powerful and flexible than multi-property DOM queries as a means of navigating and accessing attributes in XML documents.)

We also asked what problems and challenges Q1 Labs had encountered in their use of Squish:

"We really have encountered no big challenges; Squish does the job we want it to do. The only issue we ran into was in the handling of Alert/Confirm windows—an area we know that froglogic is working to improve.

Squish’s technical support is something that many customers depend on. We asked Chris what his experience had been, and he told us:

"From the demo phase up until now the team at froglogic have worked hard to answer questions and work on issues. So yes, we are very satisfied with the technical support we have received."

Scope and Benefits

Q1 Labs already have more than 800 test cases, with more in production. We asked Chris what benefits their automated testing had delivered:

One of the main benefits has been the decrease in the time it takes for our regression testing cycles. What used to take a few QA members weeks can now be done in a few days through automation. This also means that we can run full regression suites more often during our development cycle, instead of waiting until the end.

Chris also mentioned that recently Q1 Labs has extended its testing effort:

"Through the past couple of development cycles we have been automating some functional tests during the initial development phases. This has allowed us to thoroughly test new features as soon as they are available, and to raise bugs much earlier in the cycle."

Chris also told us that although at present Q1 Labs use their own in-house batch test running and reporting tool, with Squish as the only third party product in their test tool chain, they are currently considering using some complementary tools.

"It’s good to know that from Squish’s end we’ll be able to integrate our current automation suites with, for example, Testlink, if we decide to go that route."


Q1 Labs now has considerable experience with testing using Squish and has built up an impressive set of test cases which they are actively extending. And their experience of integrating Squish with their own in-house tools has given them the knowledge and confidence to integrate Squish with other tools if they decide to extend their tool chain.

Chris told us how test automation with Squish had enabled Q1 Labs to reduce their regression testing cycles from weeks to just a few days, with all the consequent benefits that such time saving and fast turnaround can deliver.

froglogic’s team would like to thank Chris for taking the time to share Q1 Labs’ experience with Squish, and we looking forward to a continued successful relationship.

About froglogic

froglogic GmbH is a software company based in Hamburg, Germany. Their flagship product is Squish, the market-leading automated testing tool for GUI applications based on Qt, Java AWT/Swing and SWT/RCP, Mac OS X Carbon/Cocoa and for HTML/Ajax-based web applications running in a variety of web browsers. froglogic also offers services in the areas QA/automated testing and C++/Qt programming and consulting. For more about froglogic visit http://www.froglogic.com.

Announcing Trinidad: In-process test runner for FitNesse wiki pages

01.26.2009 · Posted in Advisories

The first public beta release of Trinidad is now available. Trinidad is an in-process test runner for FitNesse wiki pages/tests. Here are some nice things you can do with it:

– run fitnesse fit and slim tests without starting the server as part of your build
– run fitnesse tests from JUnit within your IDE
– debug and troubleshoot fitnesse fixtures as if you were working with unit tests
– easily include fitnesse acceptance tests into your build (through JUnit)
– easily run tests in transactions and roll back after each test (with Spring)

For download links, usage instructions and more information, click here.

MockFtpServer 2.0 (final) Released

01.14.2009 · Posted in Advisories

The MockFtpServer project provides a mock/dummy FTP server implementations that can be very useful for testing of FTP client code.
MockFtpServer version 2.0 includes a new "fake" implementation of an FTP server. It provides a high-level abstraction for an FTP Server and is suitable for most testing and simulation scenarios. You define a virtual filesystem (internal, in-memory) containing an arbitrary set of files and directories. These files and directories can (optionally) have associated access permissions. You also configure a set of one or more user accounts that control which users can login to the FTP server, and their home (default) directories. The user account is also used when assigning file and directory ownership for new files.

FakeFtpServer processes FTP client requests and responds with reply codes and reply messages consistent with its configured file system and user accounts, including file and directory permissions, if they have been configured.

Here is an example showing configuration and starting of an FakeFtpServer with a single user account and a (simulated) Windows file system, defining a directory containing two files. If you wish, you can define a Unix file system, instead.

// Create the server and add a user account
FakeFtpServer fakeFtpServer = new FakeFtpServer();
fakeFtpServer.addUserAccount(new UserAccount("user", "password", "c:\\data"));

// Set up the Windows filesystem
FileSystem fileSystem = new WindowsFakeFileSystem();
fileSystem.add(new DirectoryEntry("c:\\data"));
fileSystem.add(new FileEntry("c:\\data\\file1.txt", "abcdef 1234567890"));
fileSystem.add(new FileEntry("c:\\data\\run.exe"));


Qt GUI Testing: Packet Design QA Success with Squish

12.15.2008 · Posted in Advisories

Silicon Valley based Packet Design develops networking route and traffic analysis solutions. Their quality assurance team have been using froglogic’s Squish product for a couple of years, and for this Squish success story we had the pleasure of talking with Aj Alhait, Packet Design’s QA Manager.

Read the full story: http://www.froglogic.com/pg?id=ReferenceCustomers&category=Squish-Success-at-PacketDesign

TDD Randori/Coding Dojo’s

11.06.2008 · Posted in Advisories

Small successes in practicing TDD using Coding Dojo’s.

Our first try while educational floundered on the problem size and the skill of the moderator.

On our second attempt we went for a smaller problem and are having greater ongoing success.

Lessons learned
– Bring a mouse.
– Facilitator should be quiet mostly
– switch on a regular basis
– focus on small problems

InCisif Software released InCisif.net 2.2 on 06/10/2008

06.13.2008 · Posted in Advisories

InCisif.net is an automation tool designed to implement client-side functional testing of
Web applications under Internet Explorer 6 or 7, using languages such as VB.Net, C# or IronPython.

The version 2.2 focus on a better integration with Visual Studio.

Tests can be recorded, edited, executed and debugged from within Microsoft’s Visual Studio 2005 or 2008.
Visual Studio Express is also supported.

To learn more and download an evaluation copy, go to http://www.incisif.net

ReSharper 4.0 brings full support for C# 3.0, LINQ & VS 2008

06.11.2008 · Posted in Advisories

ReSharper 4.0 provides the most up-to-date support for C# 3.0, including LINQ, as well as providing many intelligent tools to make the new language features much easier to work with. Get the low-down on C# support here. Other key new features and productivity enhancements include:

• Comprehensive Insight into .NET Framework
• Solution-Wide Analysis
• Code Cleanup
• New and Updated Refactorings
• Multiple New Productivity Features
• ASP.NET Speedup

For a detailed overview of the major new features, see http://www.jetbrains.com/resharper/features/newfeatures.html?rs4a

Also, to simplify things for our users, we’re now offering a single download package for all editions (Full, C# and VB.NET).

For fully-functional 30-day evaluation downloads of ReSharper 4.0, go to http://www.jetbrains.com/resharper/download/index.html?rs4a

InCisif Software released vsTODOlist on 04/06/2008

04.24.2008 · Posted in Advisories

vsTODOlist is a Visual Studio 2005 or 2008 language extension that allows you to
implement to-do lists for your development projects using color coding and

A TODO list file is still
– text based
– partially unstructured

vsTODOlist is
– Free
– Customizable.

Screen cast and download at http://www.InCisif.net/vsTODOlist

Frank Cohen talked on The Next Step in Unit Testing and Java & SOA

04.24.2008 · Posted in Advisories

Free Podcast: Featuring Frank Cohen on Unit Testing in Java & SOA [img align=right]http://skillsmatter.com/custom/images/sm-logo-black-manga.gif[/img]

Java developers have widely adopted test first software development strategies. Unit test frameworks for Java, Web services, Ajax, REST, Service Oriented Architecture, and Flash/Action Script show the diversity of adoption among Java developers. In this podcast, Frank takes Java developers through the advanced topics in unit testing: turning unit tests into functional tests, running unit tests on a scalable grid of unit testing nodes, leveraging unit tests build by developers in the software testing effort, correlating unit test results to frameworks that observe hot spots of performance and providing operational data to unit tests at test runtime. Frank also talks about TestMaker and Selenium.WATCH THIS PODCAST
Podcast: Frank Cohen on Unit Testing in Java & SOA

[img align=left]http://skillsmatter.com/custom/geeks_thumb/frank-cohen-large.jpg[/img] Founder of PushToTest and author of FastSOA, Frank Cohen is the expert you ‘Go To’ when you need to understand and solve problems in complex interoperating information systems, especially Service Oriented Architecture (SOA,) Ajax, and Web services.

Podcast: Frank Cohen on Unit Testing in Java & SOA

Selective testing of java apps advances

03.09.2008 · Posted in Advisories

The Good News: there are now 3 projects that do selective testing in java – Testar, JTestMe, Infinitest
The Bad News: each is in various stages of incompleteness.

Yet I am encouraged and hope that progress will be swift in this area.

I see three major use cases for selective testing:

* Running tests while editing your code just as modern IDEs compile your code on the fly. The best example of this approach is Infinitest.
* Making the smoke test build fast. (Often the smoke test is run as a pre-submit test for the code to be committed to the repository)
* Quick feedback from acceptance/integration/QA tests. This is best achieved with a build grid to run these tests in parallel.