Appium Wins A Bossie Award From InfoWorld

October 13th, 2014 by Amber Kaplan

Thanks to InfoWorld for naming Appium as the mobile testing framework of choice in the category of the Best Open Source Application Development Tools in this year’s Bossie Awards!  Sauce Labs is proud to sponsor the development and maintenance of this world class open source project. Cheers to our Ecosystems team and to the external committers who have helped drive its success. For more about Appium, read below.

appiumbossyaward

Appium is an open source test automation framework for use with native, mobile Web, and hybrid mobile apps. It uses Node.js and drives iOS and Android apps via the WebDriver JSON wire protocol. There are already Appium clients written in languages like Ruby, Python, Java, JavaScript, PHP, C#, and RobotFramework.

Appium is at its heart a Node.js Web server that exposes a REST API. It receives connections from a client, listens for commands, executes those commands on a mobile device, and responds with an HTTP response representing the result of the command execution. If you don’t want to fuss with Node.js, you can install GUI-driven Appium servers on Windows and OS X.

— Martin Heller

The Bossy Awards showcase InfoWorld’s picks of the year among languages, frameworks, libraries, and all the other tools that programmers use. To learn who else won, click here.

Announcing Support For iOS 8

October 10th, 2014 by Amber Kaplan

ios8Today we added support for iOS 8 to our platform offering. The new simulators run on OSX 10.9 and will support both the iPhone 6 and iPhone 6 Plus screen sizes. Heralded as the biggest release to-date, iOS 8 delivers several new features including Apple’s HealthKit and iCloud integrations.

You can access the new simulators for web testing using the example code below.

# for Java and Appium
DesiredCapabilities caps = DesiredCapabilities.iphone();
caps.setCapability("browserName", "Safari")
caps.setCapability("platformVersion", "8.0");
caps.setCapability("appium-version", "");
caps.setCapability("platformName", "iOS");
caps.setCapability("deviceName", "iPhone Simulator"); # for Node and Appium caps = {browserName: 'Safari'}; caps['platformVersion'] = '8.0'; caps['appium-version'] = ''; caps['platformName'] = 'iOS'; caps['deviceName'] = 'iPhone Simulator';
# for Python and Appium
caps = {'browserName': "Safari"}
caps['platformVersion'] = "8.0"
caps['appium-version'] = "1.3.0-beta1"
caps['platformName'] = "iOS"
caps['deviceName'] = "iPhone Simulator"

 

Grab the code for other supported languages from the platforms page.

How Yahoo! Mail Transformed Its Functional Testing + Continuous Delivery Process [WEBINAR]

October 8th, 2014 by Amber Kaplan

Yahoo Mail 2 (1)

Learn how one Engineer helped transform internet giant Yahoo! Mail’s quality engineering process through functional testing and continuous delivery – and the role Sauce Labs plays in their process.

Be sure to sign up for our next webinar on Wednesday, October 22nd, 2014, at 11:00am PDT. You won’t want to miss this one! 

Click here to register.

Over the last two years, Front End Developer Neil Manvar’s most important contribution to Yahoo! has been developing a modern functional testing framework that is based on open-source technologies, plays well with legacy code, supports many browsers, does not need maintenance, is readable to product managers, and makes writing a pleasure.

In his quest to build this framework, he’s also learned to navigate structural and organizational challenges; most significantly convincing upper management to require each developer to write and run tests on their code as their new standard operating procedure.

Neil will talk through and highlight:

• What their tech stack looks like (Cucumber, Page-Object, Watir-Webriver, Sauce Labs)

• How they flip features on and off and test against them

• How features get pushed, and the role of functional testing

• Why they structurally implemented testing into each build, even for devs

• How the shift towards cloud-based services, open-source technologies, and devs who write QA code is changing the face of the entire organization

A Q&A will follow. All registrants will receive a link to the presentation and recording, regardless of attendance. Sign up today!

HomeAway + Sauce Labs: Continuous Delivery Made Awesome [VIDEO]

October 7th, 2014 by Amber Kaplan

A few weeks back, we sat down with Carl Shaulis at HomeAway to learn how they leverage Sauce Labs‘ cloud in their testing process.

HomeAway, Inc. is the world’s leading online marketplace for the vacation rental industry. With over one million live vacation rental listings in 190 countries paired with a family of 50 websites and hundreds of applications thanks to a series of acquisitions, quality is their top priority. To get ahead of the curve, Carl’s team is trying to automate and use best practices like continuous integration as much as possible. We were also thrilled to hear that they’re using Appium, a cross-platform test automation framework powered by Sauce Labs, for their mobile testing.  Carl also says Sauce fits perfectly into their testing process.

Watch the video below to learn more about their path towards continuous delivery, and how Sauce fits into that story.

Want to learn more? Click HERE to read the HomeAway case study.

Want to share your story? We want to hear from you! Submit a request here.

Recap: Sauce Labs at Selenium Conf 2014 [VIDEO]

September 24th, 2014 by Amber Kaplan

We’re still glowing from this year’s Selenium Conf in Bangalore. Santi Ordonez, Ashley Wilson, and Isaac Murchie attended the event and represented Sauce Labs.

The Selenium Conference is a volunteer-run, non-profit event presented by members of the Selenium Community. The goal of the conference is to bring together Selenium developers & enthusiasts from around the world to share ideas, socialize, and work together on advancing the present and future success of the project.

Santi, Ashely, and Isaac shared with us some of their insight into the crowd this year that we in turn wanted to share with you. Of approximately 450 attendees, they estimated around 75% purchased their own ticket, therefore the personal interest level in Selenium was high.  The attendees were extremely technical at this event, even more so than in Boston’s conference. Only 5 people confessed to being IDE users, while everyone said they use WebDriver. Win!

Sauce at SelenConf

Santi achieved near star status at the Sauce Labs booth; it was crowded the entire time.

Santi

Meanwhile, Isaac gave a great talk titled “Selenium in the Palm of your Hand: Appium and Automated Mobile Testing.”

Image via Selenium Conf 2014

Image via Selenium Conf 2014

Check out Isaac’s talk here:

For more great resources courtesy of Selenium Conf, check out the links below, and make sure to follow Santi and Isaac on Twitter for the latest.

Selenium Conf Resources:

Spread the word: @SeleniumConf

Announcing Sauce Integration With Siesta

September 16th, 2014 by Amber Kaplan

siesta-logoSauce is thrilled to announce that we’ve integrated with Siesta by Bryntum!

Siesta is a JavaScript unit testing tool that can help you test any JavaScript code and also perform testing of the DOM and simulate user interactions. The tool can be used together with any type of JavaScript codebase – jQuery, Ext JS, NodeJS, Dojo, YUI etc. Using the API, you can choose from many types of assertions ranging from simple logical JS object comparisons to verifying that an HTML element is visible in the DOM. It comes in two versions: Lite and Standard. With Lite you can easily test your JavaScript in the browser, and with Standard you can also automate your tests (highly recommended).

Sauce is a cloud-based tool that enables you to securely test your web and mobile apps across 385+ browser/OS/platform/device combinations.

How does Siesta work with Sauce?

Siesta’s integration with Sauce is super easy since they’ve done most of the work under the hood. The main difference from the usual way you run WebDriver tests in Siesta is the addition of a –saucelabs argument, which will define the necessary credentials for connecting to Sauce and the –cap arguments which will specify the OS and browser combinations on which you want your tests to run. When you run Siesta tests using WebDriver, a standard command might look like this:

__SIESTA_DIR__/bin/webdriver http://localhost/myproject/tests/harness.html

For running the same test on Sauce’s hosted browsers, you’ll need to add your Sauce credentials and desired capabilities, like so:

__SIESTA_DIR__/bin/webdriver http://localhost/myproject/tests/harness.html --saucelabs SL_USERNAME,SL_KEY
--cap browserName=firefox --cap platform=windows

This command will then arrange a few things behind the scenes, like setting up the Sauce Connect tunnel so these tests can run locally and securely, and direct Sauce to execute the test specs on the latest version of Firefox on Windows. Of course, there are many desired capabilities and platforms you can choose to make sure you’re running tests according to the coverage that you need, and you can see all the different options on the Sauce Labs Platforms page.

For more information and the nitty gritty details, go ahead and check out the instructions provided in the Siesta docs: http://bryntum.com/docs/siesta/#!/guide/saucelabs_integration

What does the integration mean?

It’s become more than clear in the last few years that managing all the different browsers and operating systems out there, both desktop and mobile, is a whole lotta hassle and clearly better handled by a cloud-based service like Sauce Labs. But you need to ensure your JavaScript works from everywhere, and since you can now run your Siesta tests on any or all of Sauce’s 385 platform configurations, you can get that assurance with minimal effort and stay focused on the JavaScript code itself without having to invest your time and energy managing infrastructure.

Yep, you read that right: Now you can test your JavaScript code across all of Sauce’s instantly available browsers and platforms without setting up or maintaining your own VMs. Magic!

For more information, check out the Bryntum blog post.

Michael Sage, Principal Technology Evangelist, Sauce Labs

Michael Sage is a Principal Technology Evangelist at Sauce Labs who helps software teams develop, deliver, and care for great apps. He’s spent over 15 years as a solutions architect and consultant with software companies including Mercury Interactive, Hewlett Packard, and New Relic. He lives in San Francisco, CA.

Recap: How To Combine Front-End and Back-End Testing [WEBINAR]

September 15th, 2014 by Amber Kaplan

sauce_labs_blazemeterThanks to those of you who attended our last webinar, How To Combine Front-End and Back-End Testing, featuring our  Chief Technology Evangelist Michael Sage and BlazeMeter‘s VP of Customer Success, Ophir Prusak. 

Everyone knows that front-end testing is crucial to make sure your web and mobile apps are meeting the needs of your users and customers. But how do you know what will happen to your front end when your web or mobile app is under heavy load?

Michael and Ophir set out to help answer this question, plus more. Together, they covered many valuable topics, including:

  • The fundamentals of approaching performance vs. front-end testing
  • Step-by-step instructions on getting real-world results from your front-end while applying load to the back-end
  • Critical issues you need to know about performance testing

They also showed a real-world test in real time using JMeter and Selenium.

Missed the webinar? You can watch it in its entirety below.

Below you’ll find the top Q&A’s post-presentation:

Q: Why do we need JMeter? Why can’t we do performance testing with Selenium browsers?

A: [Ophir] Great question! The answer is really all to do with scalability. When you’re doing a test with Selenium, you’re usually using real browsers –and real browsers are very resource intensive. On the other hand, when you’re doing a test in JMeter by using virtual users, I can exponentially get a lot more users per machine. Just to give you an idea of ballpark numbers, on a single low-end Amazon EC2 machine, I can get 3,4 or 5 virtual users using browsers in parallel until I hit a bottleneck on the machine. If I’m doing it with a JMeter, I can get 1,000 people in parallel. So you’re looking at around 250X more users when I’m doing a JMeter test per machine than Selenium. So if you’re looking at ten or 100 users, you can do it with Selenium but when you’re looking at tens of thousands of users, it just won’t be able to support it.

Q: Can I test behind the firewall?

A: [Michael] Yeah, absolutely We have a utility called ‘Sauce Connect’, which creates an encrypted tunnel between your environment inside your firewall or your DMZ and our grid and you get a dedicated virtual machine to act as the tunnel property. You run this utility and it appears as if the Sauce Labs grid is inside your network and it’s all done in an encrypted fashion.
[Ophir] At BlazeMeter, we also have the ability to run behind the firewall. It’s a different type of solution. It does require having something we call a BlazeMeter agent, which is basically a load generator which sits behind the firewall, which you can still control through your browser but you have a local machine which is creating the requests for you.

Lastly, please follow our friends at BlazeMeter at @blazemeter, Sauce Labs at @saucelabs, Michel Sage at @mondosage, and Ophir Prusak at @prutwo to keep up with the latest.  Feel free to share this webinar using the hashtag #frontandbackendtesting.

 

 

Sharecare Scales Mobile Automated Testing With Sauce Labs [VIDEO]

September 10th, 2014 by Amber Kaplan

We took a whirlwind trip to New Haven, CT to sit down with Daniel Gempesaw, Software Testing Architect at Sharecare. Sharecare is a wellness platform founded in part by Dr. Oz and Oprah.

We learned that after Sharecare started automating their testing process while using Sauce, time spent for each deploy fell from 7 days to 1 day. With more free time, the team is able to focus on scaling their mobile testing with Appium and employing new best practices such as mobile CI.

Watch this video to learn how they scaled their mobile testing with Sauce Labs.

Be sure to check out the case study, too.

Happy testing!

Re-Blog: Add Some Sauce To Your IE Tests

September 4th, 2014 by Amber Kaplan

Sauce Labs hearts ThoughtWorks! And apparently the feeling’s mutual. Check out this great blog post mentioning Sauce Labs by Tom Clement Oketch.

See an excerpt below:

Using Sauce Labs with a Continuous Integration (CI) Service

Running your tests only locally will not get you much mileage, especially if you are working with a sizeable team. Using a Continuous Integration service is therefore essential. Fortunately, Sauce Labs has first class support for a number of Continuous Integration services including JenkinsBambooTravis and TeamCity. The preceding links should contain sufficient information to integrate Sauce Labs with each of those CI services. In our case however, we had already set up Snap-CI as our CI service of choice. Snap-CI currently does not provide such integration with Sauce Labs. We therefore made the following adjustments to include Sauce Labs in our build pipeline:

  • As part of our functional test stage on Snap-CI, it was necessary to set up a tunnel to Sauce Labs using Sauce Connect, otherwise the browsers at Sauce Labs would not be able to run against our application instance in the Snap-CI Build Pipeline. We came across this gist which we altered to suit the requirements of our Snap Build. The gist takes care of downloading, starting and waiting for Sauce Connect to establish a tunnel before the functional tests are actually run
  • The terrain.py setup remained largely unchanged, except for the use of environment variables rather than the explicit declaration of the Sauce Username and API Access Key. Given that Snap-CI exports a number of additional environment variables during each build, it was also possible to annotate the test descriptions with these variables. Using annotations such as the pipeline counter and the git commit subsequently made it easier to identify the appropriate test in the Sauce Labs test dashboard.

Are you in a position where you need to run IE tests without getting your hands dirty? If so, maybe Sauce Labs can save your time as well. If on the other handyou are more interested in evaluating some of the other options out there, then this guide is a good place to start.

Don’t miss the entire post HERE for more code and instruction.

Have an idea for a blog post, webinar, or more? We want to hear from you! Submit topic ideas (or questions!) here.

How to Combine Backend & Front End Testing [WEBINAR]

August 28th, 2014 by Amber Kaplan

sauce_labs_blazemeterEveryone knows that front end testing is crucial to make sure your web and mobile apps are meeting the needs of your users and customers. But how do you know what will happen to your front end when your web or mobile app is under heavy load?

Sauce Labs and BlazeMeter are teaming up for an awesome webinar, in which we’ll be giving you step-by-step instructions on how to get real-world results from your front end while applying load to the backend.

We will:

  • Reveal the 3 critical things you need to know about performance testing
  • Run a real-world test in real time using JMeter and Selenium
  • Cover the fundamentals of how to approach performance vs. front end testing

Our experts will stay online for a live Q&A session. Plus, at the end of the webinar, we’ll be giving away an exclusive coupon from BlazeMeter & Sauce Labs for a great discount on our solutions.

Sign up today for our event on Tuesday, September 9th, 2014, at  11:00 am Pacific Time.