Posts Tagged ‘Cross Browser Testing’

Sauce Builder Webinar: From zero to creating, storing and running automated tests in under 30 mins

May 3rd, 2011 by The Sauce Labs Team


As you may have heard, we recently released a new, free tool that makes building and running Selenium tests easier than before. Sauce Builder is now available for download, and with it comes the ability to create Selenium tests in your Firefox browser by simply clicking around your application. You can then run those tests in Sauce OnDemand with just a few clicks, no Selenium expertise necessary.

To explain more about Sauce Builder and how automated testing can accelerate your development velocity, we held a webinar with Adam Christian, a Sauce Labs developer and project lead for Sauce Builder.

With Sauce Builder, we’re hoping to simplify and improve the cross-browser testing process for development and QA teams here is an updated video that will demonstrate how to use

  • Build Selenium tests with zero programming – Simply click through your application and Sauce Builder writes a Selenium scripts that reflect your actions.
  • Export results in the language of your choice – HTML, JAVA, Groovy, C#, Perl, PHP, Python and Ruby so your tests speak the same language as your application and dev team.
  • Eliminate bugs faster – Use immediate video playback of your tests in action, and share them with your teammates.
  • Remove test infrastructure headaches – Sauce Builder makes it a snap to either run tests locally in Firefox or in the cloud with access to all the browser / OS combinations supported in the super scalable Sauce OnDemand service.

Watch an updated video presentation that will show you how to build a CI system using Selenium Builder, GitHub, Travis and Sauce Labs.

 

Sauce Labs Eliminates Barrier to Automated Cross-Browser Testing with Sauce Builder

March 31st, 2011 by The Sauce Labs Team

New tool enables QA pros to build and run Selenium tests without Selenium expertise or infrastructure

SAN FRANCISCO, CA — (Mar. 31, 2011) — Sauce Labs, the web application testing company, today introduced Sauce Builder, a free testing tool that makes it easy for users to build Selenium tests without Selenium expertise and run them with the Sauce OnDemand service. Sauce Builder allows users to build automated Selenium tests simply by clicking through an application. By eliminating the complexity of hand-coding Selenium scripts, Sauce Builder accelerates the adoption of automated testing for QA and development teams that have been craving the development productivity Selenium offers. Sauce Builder is free and available for immediate download.

“Automated testing has historically been one of the most complicated, yet most valuable, technologies for companies that build software. Automated testing is doubly challenging because teams need to build and maintain a testing environment and on top of that, building tests can require significant technical skill,” said John Dunham, CEO of Sauce Labs. “We launched our Sauce OnDemand cloud service last year to eliminate the headache of maintaining a test infrastructure. Now with Builder, we’ve removed the next barrier to the adoption of automated testing and we’re very excited to see how this combination can help QA and development teams achieve their goals.”

With Sauce Builder, Sauce Labs continues to simplify and improve the cross-browser testing process for development and QA teams. Sauce Builder’s benefits include:

  • Build Selenium tests with zero programming – Simply click through your application and Sauce Builder writes a Selenium scripts that reflect your actions
  • Export results in the language of your choice – HTML, Java, Groovy, C#, Perl, PHP, Python and Ruby so your tests speak the same language as your application and dev team
  • Eliminate bugs faster – Use immediate video playback of your tests in action, and share them with your teammates
  • Remove test infrastructure headaches – Sauce Builder makes it a snap to either run tests locally in Firefox or in the cloud with access to all the browser / operating system combinations supported in the super scalable Sauce OnDemand service

With over four million downloads in just four years, the Selenium project is the world’s most popular functional testing framework for web applications. Designed to further expand Selenium adoption, Sauce Builder is the first web-based Selenium tool of its kind, including technology Sauce Labs acquired from Go Test It in 2010. After becoming more familiar with the technology post-acquisition, Sauce Labs elected to open source the code under the name “Se Builder” earlier this year because the technology held so much promise for the Selenium community.

Sauce Builder expands the capabilities of Se Builder by enabling users to directly access Sauce OnDemand, the cloud-based Selenium service, to run their tests. Sauce OnDemand is free to try for up to 200 testing minutes every month. Sauce Labs is also leading a collaborative effort with the Selenium community to deliver a new generalized plug-in architecture for Se Builder that among other things will support integrated plug-ins for testing services like Sauce OnDemand.

To learn more about how automated testing can accelerate your development velocity, please join Adam Christian,a Sauce Labs developer and project lead for Sauce Builder, on Tuesday, April 19th at 10AM Pacific for the webinar, “From zero to creating, storing and running automated tests in under 30 minutes”.

“Debugging takes up valuable time that developers could be using to focus on their applications,” said Sauce Labs’ Christian. “Now with Sauce Builder, developers can leverage this great development environment through our cloud testing infrastructure and not worry about dealing with building or maintaining their own costly testing infrastructure.”
About Sauce Labs
Sauce Labs, web application testing company, provides Sauce OnDemand, a cloud based service that allows users to run automated cross-browser functional tests faster and eliminating the need to maintain their own test infrastructure. To date, over four million Sauce OnDemand tests have been run in the Sauce cloud. The lead investor of Sauce Labs is the Contrarian Group, Peter Ueberroth’s investment management firm. Sauce Labs is headquartered in San Francisco, California. For more information, visit http://saucelabs.com.

Media Contact
Chantal Yang
LEWIS Pulse for Sauce Labs
sauce@lewispulse.com
415-875-7494

 

Manual Testing In The Cloud (Beta Program!)

February 17th, 2011 by The Sauce Labs Team

We’re pleased to announce a new private beta program for manual exploratory testing that allows you to instantly control any browser, in the cloud, using your mouse and keyboard.

With this new service, each time you find a bug,  you’ll have access to the video and screenshots of every step. You can record video of your tests and track test time by browser. Plus, sharing the bug report with the rest of your team is a snap, as we provide a convenient way to securely integrate with your existing bug tracker.

Click here to join the beta!

The Motley Fool Makes a Wise Investment in Sauce Labs Technology

November 10th, 2010 by The Sauce Labs Team

Don’t take it from us that teams who invest a little time in using Sauce OnDemand see a great ROI.

Dave Haeffner met Jason Huggins after a talk at Agile2009, and now the team at The Motley Fool has made it part of their development cycle to run tests on the browsers hosted by Sauce Labs.

What did Haeffner and his crew discover from sending tests to our browsers instead of their own?

Read The Motley Fool Case Study to find out how the Fool sped up testing 10X, slashed dev wait times and gained velocity with Sauce Labs.

Sauce Labs Solves Real-World Selenium Issues

October 27th, 2010 by The Sauce Labs Team

Here at Sauce Labs, we work with, quite literally, millions of real-world Selenium tests. A handful of major issues with Selenium come up again and again with our customers. Some are browser configuration details we can tweak in our cloud, while others are beyond the reach of Selenium 1.

The good news for the Selenium community is that Selenium 2 aims to solve these latter issues in a comprehensive way. Most current Selenium users, however, have yet to make the leap to Selenium 2. In the meantime, we’ve been working around some of the biggest issues to make things work well for users of Sauce OnDemand.

First, we’ve brought Sauce OnDemand up to the best Selenium can be for SSL support and Unicode handling. On top of that, we’ve implemented a cross-browser file upload command that works in all versions of Internet Explorer, Safari, and Firefox, along with an automatic OS-level popup killer that deals with Internet Explorer’s tendency to break JavaScript testing environments with modal dialogs.

SSL Support

Testing with SSL is challenging. Testing with Selenium and SSL can seem downright impossible. But it doesn’t have to be so! Selenium users encounter two major issues with SSL: Selenium’s proxy mode interfering with the SSL connection and invalid certificates in staging environments. The solution to both is to use the Selenium project’s “CyberVillains” Certificate Authority.

In browsers other than Internet Explorer and Firefox, Selenium proxies all HTTP and HTTPS traffic. Browsers correctly recognize that the HTTPS connection is being interfered with and prevent Selenium from doing its job. The solution that the Selenium project came up with is to have Selenium’s proxy server sign HTTPS connections itself, using the CyberVillains CA. Once you install this certificate to the Trusted Root Certificate Authorities on Windows, Selenium can re-sign all HTTPS connections with a certificate signed by CyberVillains, allowing Selenium to drive your browser to HTTPS URLs. By default, it will do its best to validate the certificate used to sign the connection Selenium makes to your AUT, but that, too, can be dealt with.

Many teams use SSL certificates in testing that aren’t entirely valid. This presents a problem for in-browser testing, because browsers will complain about the SSL certificates being invalid on HTTPS URLs. CyberVillains to the rescue again! When browsers are configured to use Selenium to proxy all content, Selenium can be launched with -trustAllSSLCertificates, which turns off Selenium’s SSL certificate validation and accepts anything. In *iexplore and *firefox modes (AKA *iehta and *chrome, respectively), browsers are not configured to use Selenium as a proxy server, which usually means the CyberVillains approach doesn’t work. In Sauce OnDemand, we now automatically configure Internet Explorer to use Selenium as a proxy server, even in *iexplore mode. For Firefox, we’ve implemented custom profiles, which give you even more control over your certificate environment.

You can read more about our HTTPS support in the Sauce OnDemand documentation.

Unicode

We have now enabled full Unicode support for all browsers in Sauce OnDemand. We’ve installed East Asian Language support on all of our Windows robots, so your Unicode will render correctly in screenshots/videos, and you can now make assertions in your tests using unicode characters.

Cross-browser File Upload

File upload has been a persistent problem for Selenium users. We are excited to announce our preliminary support for cross-browser file upload in Sauce OnDemand. We’ve stepped out of the browser environment to interact directly with the operating system (only Windows for now), downloading files you specify from a URL and entering them into file input fields. We have this working on all versions of Internet Explorer, Safari, and Firefox on Windows, and we look forward to open-sourcing our work when we’ve flushed out the last few issues with it.

We’ve implemented file upload support using the existing attachFile command in Selenium, so you don’t even need to change your tests that already work in Firefox. Just call attachFile with a URL to the file you want uploaded and a Selenium locator for the file input box, and we’ll take care of the rest!

OS-level Popup Eliminator

Using the same OS-level hooks we built for cross-browser file upload, we’ve built a popup eliminator that will automatically click “OK” or “Yes” in any browser-level popups that appear in Internet Explorer. For example, even with the CyberVillains certificate, IE 6, 7, and 8 will pop up warnings when opening a page with mixed HTTP/HTTPS content. Our popup eliminator takes care of these and more popups. As we gain confidence in this approach, we look forward to pushing these changes upstream into the Selenium project or open-sourcing them as a standalone wrapper for Selenium.

At Sauce Labs, we’re all about providing the best Selenium experience possible. If you have suggestions for how we could improve these features, let us know on our forums!

Absolute Beginners Guide to Running Sauce RC with HTML Scripts

September 30th, 2010 by The Sauce Labs Team

Guest blog post by Sauce user Adam Lemisch

After learning you can’t easily use tests created in Selenium IDE (in HTML format) with Selenium RC to point tests at multiple browsers, I figured I had no choice but to rush out and learn a scripting language.

But after some research, I came across Sauce Labs, and realized it was THE perfect jump off point for me. I could use Sauce IDE to generate the tests I needed, point Sauce RC at the HTML files that contained the test steps, and run those tests against different browsers.

The following will guide you through the process of utilizing Sauce RC to run HTML tests created in Sauce IDE. If you haven’t already done so, please download and install Sauce IDE and Sauce RC at http://saucelabs.com/downloads.

After you’ve played with/learned Sauce IDE and have a test you want Sauce RC to handle, you will have to save the “test case” and “test suite” as HTML files in order for Sauce RC to work with them.

This is where the issues began…

Saving the “Test Case” CORRECTLY:

1. From the Sauce IDE “File” menu, select “Save Test Case” or “Save Test Case As…”

2. Navigate to the directory that you wish to save your test case in.
2a. Make sure that you manually add the “.html” extension to the file name.
2b. Make sure that you select the “HTML Files” option from the “Save as type:” box.

You’re done saving the “Test Case” portion of the files required. Next, we save the “Test Suite” files in pretty much the exact same way.

Saving the “Test Suite” CORRECTLY:

1. From the Sauce IDE “File” menu select “Save Test Suite” or “Save Test Suite As…”

2. Navigate to the directory that you wish to save your test suite in.
2a. Make sure that you manually add the “.html” extension to the file name.
2b. Make sure that you select the “HTML Files” option from the “Save as type:” box.

You’re done saving the “Test Case Suite” portion of the files required.

Next we move on to showing Sauce RC where to find the files to run from. (If you know a little about HTML, you can look at the two files you just saved in an HTML editor. You will see that the TestSuite.html file is linking to the TestCase.html file.)

Showing Sauce RC where the files are CORRECTLY:

1. On the “HTML Suite” tab of Sauce RC we are going to fill in the required information.

1a. “Suite File” must be filled in with the exact path to the file we designated in the second step titled, “Saving the “Test Suite” CORRECTLY:”

1b. “Result File” must contain a path to a directory WITH a file name at the end of the path that includes the “.html” extension. If you simply input the path and FULL filename, Sauce RC will create the “Result File” for you at run time.

1c. “Start URL” must match what’s in your test case.

1d. “Browser” – well that’s just self explanatory…

The following screenshot is an example.

So, there you have it! You should be able to hit run and watch as Sauce RC runs through your test script in the selected browser. Hopefully this helps, and if you run into any issues and get other answers, please share in the Sauce forums. Chances are we’re all looking for an answer when we are just starting out!

A Quick Request to Her Majesty’s Government

August 4th, 2010 by Jason Huggins

Earlier this week, the UK government posted their reply to a petition, stating that they will not upgrade their systems away from Internet Explorer 6 (IE6) anytime soon. The online petition, created in February 2010, encouraged all government departments to upgrade their browsers. More than 6,000 UK citizens signed the petition.

The petition explains its reasoning: “Most creative and software development companies are forced by government department clients to build websites for IE6 when most of the industry has moved on.”

We at Sauce Labs feel for the citizens of the UK, and we’d like to help. Unfortunately, in its reply, the UK government cites the high cost and time involved in testing an upgrade as the reason it will not upgrade IE6. The official government response states: “Upgrading these systems to IE8 can be a very large operation, taking weeks to test and roll out to all users. To test all the web applications currently used by HMG departments can take months at significant potential cost to the taxpayer. It is therefore more cost effective in many cases to continue to use IE6”

Sauce Labs is kindly offering Her Majesty’s Government some help in upgrading, and a free evaluation of Sauce OnDemand, which will save development time and cost the citizens of the UK far less.

With the Selenium cross browser testing tool, any UK government department can test their site in IE6 and IE8 in one shot. Since Selenium is free and open source software, licensing fees won’t be an issue for UK taxpayers. And with cloud computing services like Sauce OnDemand, there’s no need to invest in expensive and labor intensive test lab infrastructure. Instead, Sauce Labs provides a low-cost cross-browser testing service in the cloud.

We challenge the UK government to create an account at saucelabs.com now and try Selenium today. To back this up, we’re offering any UK government department a free trial account to try out the service to test their department websites in IE6 and IE8.

All in favor, petition your parliamentarian directly and Demand Your Sauce!

Dzone Covers Monocle and Async Programming

July 29th, 2010 by The Sauce Labs Team

Mitchell Pronschinske reports on 2010/07/28 – Greg and Steven Hazel from Sauce Labs have recently built what they call, “An async programming framework with a blocking look-alike syntax”. This framework, named Monocle, is focused on being portable between event-driven I/O frameworks. Currently, Monocle supports the Twisted and Tornado frameworks.

For those who haven’t heard of Sauce Labs, they were co-founded by John Huggins, the creator of Selenium. Sauce Labs’ free and commercial tools build on top of the core Selenium testing framework.

The emergence of Monocle could indicate that Sauce Labs is taking a more focused look at event-driven code and its role in concurrent web performance. Event-driven code is efficient and intuitive, but sometimes procedures are are split up and code is expanded in a not-so-good way.

Read more at Dzone

The Over-Exaggerated Death of Flex and Flash

July 20th, 2010 by Jason Huggins

The war between Adobe’s Flash and Apple’s support for HTML5 continues to heat up. The first set of battles between Apple and Adobe have reached a standstill for the moment. Adobe is pushing Flash for Android (which is awesome, on my new Google Nexus One, by the way). Meanwhile, the Apple-backed SproutCore project makes HTML5 a viable platform for developers to adopt today.

In spite of the Apple marketing machine, we’re betting that Flex and Flash still have their parts to play in the future of the web. After all, how can we just forget about the massive installed base? Flash is now on 98 percent of computers. More importantly, Flex and Flash have comprehensive tool sets that developers still need. Flash is the single browser plug-in that provides consistency for a chaotic and scattered web world. There are things that HTML and Javascript can’t do well, like webcam capture, media-streaming, and full-screen video. And let’s not forget — a huge segment of the web is gaming, which wouldn’t be possible (so far) without Flash. As YouTube recently noted: “While HTML5’s video support enables us to bring most of the content and features of YouTube to computers and other devices that don’t support Flash Player, it does not yet meet all of our needs.” Should we just abandon everything that we’ve known for HTML5 because it is new and exciting?

I’ll admit that even I have drunk the Apple Kool-Aid and see HTML5 for its role in the future of the web. Sauce specializes in cross-browser web app testing and HTML5 is easier to integrate with Selenium. However, the web is bigger than HTML and JavaScript. HTML5 is the future, but we live in the now. Though growing, HTML5 does not yet have the adoption that Flex and Flash have.

It’s this installed base that Sauce Labs is committing to with our announcement of the Sauce Flash-Flex Testing System.

The newest Selenium-based solution, the Sauce Flash-Flex Testing System provides testing of Flex applications on the Flash platform. Other tools in the marketplace can only test Flex applications, but the Sauce Flash-Flex Testing System covers the entire Flash platform. While Flex is a great tool for many developers, the two biggest markets on the web — gaming and advertising — are based on Flash, not Flex.

So, while we’re all excited for HTML5, rumors of Flash’s death are greatly exaggerated. Demand for Flash wont die. To a lot of people, Adobe may seem like yesterday’s news. But since not everyone has an iPad or an iPhone, the answer is still Flash and Flex, even if it’s not the new hotness.

To this strong base of Flex and Flash users: try out our Sauce Flash-Flex Testing System and give us your feedback.

Setting up Cucumber + Webrat + Selenium

June 15th, 2010 by The Sauce Labs Team

There’s quite a bit of information out there on getting these disparate tools to work together, but a great deal of it is out of date. To clear things up a bit, I’ve documented all the gems and modifications necessary to get these pieces of open source software up and running together. As time goes on, I’ll be expanding this blog post with notes about the pitfalls and various platform issues that may be discovered (I’m looking at you, Snow Leopard), but this should get most people up and running right away.

This is all using a clean REE environment via the poorly named but wonderfully written rvm, or Ruby Version Manager.

Gems you’ll need:

gem install actionmailer actionpack activerecord activeresource activesupport builder cgi_multipart_eof_fix cucumber cucumber-rails daemons database_cleaner diff-lcs fastthread gem_plugin gherkin json json_pure mime-types mongrel net-ssh net-ssh-gateway nokogiri rack rack-test rails rake rdoc rest-client rspec rspec-rails Selenium selenium-client sqlite3-ruby term-ansicolor trollop webrat

Some of those are not strictly necessary, but simply nice to have, while others solved some unexpected problems with the bare necessities. I’ll prune this list as feedback comes in from people’s experiences.

Points to watch out for:
Nokogiri: This was easily the worst on my Snow Leopard machine. It relies on the native libxml2, which had problems with 32/64 bit compatibility. No matter what I tried, errors kept coming up. I had to clean everything out with my MacPorts installation and force a universal installation.
Webrat: The Selenium server jar that was included by default caused no end of headaches. I had to manually go in to the directory, remove the default server jar, and download the newest version from the seleniumhq download page.

Once those are set up, you should be able to use Cucumber, Webrat, and Selenium together without too much headache. Then you can refer to our webinar video (which will be posted to the blog later this week) to learn how to use Cucumber to easily run Webrat and Selenium.