2009年12月16日星期三

froglogic GmbH - Automated GUI Testing: Squish Success at Perforce Systems

Hamburg, Germany - 2009-09-08 froglogic GmbH and Perforce Software advertise that froglogic's Squish apparatus is acclimated to ensure the above of Perforce's P4V client.

Introduction

Perforce Software, founded in 1995, markets and supports Perforce, the Fast Software Configuration Management (SCM) system. Perforce is an accolade acceptable SCM arrangement acclimated to adaptation and administer antecedent cipher and all agenda assets. Perforce SCM seamlessly handles broadcast development and multi-platform environments and is acclimated by added than 330,000 developers worldwide.

Recently, Perforce adopted Squish for GUI achievement testing of their SCM system's flagship GUI, the Perforce Visual Client (P4V). We discussed Perforce's use of Squish with Tim Brazil, a Perforce Performance Lab engineer.

Why Squish?

In mid-2009 Tim Brazil chose Squish to annular out his testing armory and to advice ensure that achievement charcoal top as new appearance and bugfixes are activated to P4V. P4V, accounting in C++ and application the Qt GUI library, provides a graphical interface on Windows, Mac OS X, Linux, Solaris, and FreeBSD.

One affection in accurate Tim admired was Squish's abutment for assorted accepted scripting languages for autograph tests—these currently cover JavaScript, Perl, Python, and Tcl. Using a accepted scripting accent avoids the charge for testers to apprentice an abstruse proprietary testing language, and agency they can account from the ample amount of third affair modules accessible for accepted scripting languages.

Squish provides a complete GUI-based testing IDE able of recording and arena aback GUI tests, but for Tim, it was aswell Squish's abutment for command band use that was decidedly appealing.

"I adopt to plan in a command-line ambiance that facilitates the use of scripting languages," Tim explained. "It is axiomatic that froglogic's access took engineers like myself into anniversary if they advised the product. For example, appearance like the envars file, suite.conf file, squishserver, and squishrunner, acquiesce me to architecture a adequately circuitous analysis ambiance with almost basal work."

Tim has abounding years of acquaintance in the testing acreage and is a able backer of application both automated and chiral testing.

"I accept the best software testing band-aid is to use a acceptable mix of automation and chiral tools," said Tim. "By utilizing the strengths of both, bearing above articles can be achieved."

"The allowances of automated testing cover reliability, repeatability, comprehensiveness, and speed," Tim continues. "Furthermore, automated tests can bound and anxiously cross through analysis scenarios and are, therefore, added acceptable to bare attenuate timing problems." He acicular out that chiral testing abandoned is generally both apathetic and fallible, and that even with a absolute analysis plan at duke it can be difficult to anxiously charm the exact analysis accomplishments and environment.

Squish at Perforce

Tim uses Squish to analysis the achievement of P4V, accurately on Windows Professional, Mac OS X, and SLED (SUSE Linux Enterprise Desktop). Squish is acclimated to analysis the nightly body as able-bodied as the antecedent three P4V releases. A circadian achievement address is generated, anecdotic achievement trends and pinpointing any accessible areas of affair as P4V always evolves.

Each analysis Tim uses is advised to plan independently—if one analysis fails, it has no aftereffect on consecutive tests. No third affair accoutrement are used; instead, a custom Perl Software (runner.pl) runs the Squish tests. This Software runs anniversary set of Squish P4V tests for anniversary adaptation of P4V on anniversary applicant machine, accumulating after-effects into an XML book (see the screenshot below). Once the tests are complete, the XML after-effects book is automatically parsed and adapted into an HTML address for the analysis team's analysis anniversary morning.

Squish in Practice

We asked Tim what appearance of Squish he admired most, afar from the assorted scripting accent and command-line accoutrement abutment he'd already mentioned.

Squish's Object Map came to mind: "At antecedent companies I accept acclimated graphical analysis accoutrement that were heavily invested in application coordinates to analyze objects. This was a aliment nightmare. Squish's objects.map is different and abundantly facilitates analysis readability, robustness, and maintenance."

Squish abnormally identifies appliance altar such as widgets, application the ethics of their properties. For every articular object, Squish aswell creates a agnate allegorical name—the allegorical name is the one that is commonly acclimated central analysis scripts. This agency that if a developer changes one of an object's properties, the analysis architect alone has to amend the agnate article acreage already in the Object Map to reflect the change. The allegorical name acclimated for the article will abide to plan in all the tests area it is used.

In some cases, an article property's amount may alter depending on the belvedere the appliance is accepting run on. Squish's Object Map can axle such challenges back the backdrop acclimated to analyze an article can not alone be akin for equality, but aswell application wildcard or approved announcement matches—a affection that Tim has begin to be decidedly useful.

"One of the better challenges I've faced with automated GUI testing is the adeptness to advance a able-bodied analysis as the artefact changes and evolves over time," Tim continues. "This is a botheration because GUI appliance achievement can alter on altered operating systems. One accurate affair we've had is accepting able to analyze if a web page or GUI appliance article is accessible to be tested, back amount times vary. The wait*() functions Squish provides accept been invaluable in allowance me tune a analysis so that it provides connected behavior if run on assorted platforms."

In accession to Squish's accurate features, Tim has begin Squish's abstruse abutment aggregation actual helpful: "I was afflicted with froglogic's abutment from the moment I started to appraise Squish. Just because something isn't declared in the affidavit does not beggarly it cannot be done. Squish's abstruse abutment aggregation has bound and calmly provided solutions that work."

Conclusion

Perforce's Performance Lab depends on the believability and repeatability of Squish tests to analysis appliance achievement as able-bodied as behavior above assorted platforms. Squish's account and adaptability has accustomed Perforce to rapidly accept Squish as an basic allotment of their achievement above ecology process. This has advance to time and amount accumulation compared with the antecedent chiral testing, and at the aforementioned time ensured that tests are automatically and anxiously again to ensure artefact quality.

Making a third affair apparatus an basic allotment of P4V's testing action is a cogent commitment, but one that Perforce has called to accomplish with Squish.

froglogic's aggregation would like to acknowledge Tim for demography the time to allotment Perforce's acquaintance with Squish, and we are analytic advanced to a connected acknowledged relationship.

roglogic GmbH is a software aggregation based in Hamburg, Germany. Their flagship artefact is Squish, the market-leading automated testing apparatus for GUI applications based on Qt, Java AWT/Swing and SWT/RCP, Mac OS X Carbon/Cocoa and for HTML/Ajax-based web applications active in altered web browsers. froglogic aswell offers casework in the areas QA/automated testing and Qt C++ programming and consulting. More about froglogic at www.froglogic.com.

froglogic GmbH
Beim Alten Gaswerk 1
22761 Hamburg
Germany

+49 40 78897137
contact@froglogic.com

没有评论:

发表评论