Automated Web Testing: Quality as Service for Rock-Solid Deployment

Everyone  knows  how  grave it is to test the web application or service you develop or your Plone website on the regular basis, and, with luck, everyone actually does perform it.  But do they really manage?  Even  a simple program, written in Python can behave in many different ways,  some of which occur solely  in  a rather uncommon (and hard to stage) scenario. Let's imagine  every possible behavior was tested  and   the web application was validated upon initial release, what about the second release, or even a "slight" modification in the source code? The feature being added or modified  will surely be tested,  but what about other, seemingly unrelated at first,  features  that  could have been  irrevocably broken by that minor improvement? And  the  answer is …. automated testing.

AUTOMATED TESTING

Automated testingThe  principle of automated testing is  that there is a program that runs the web application, written in Python or Plone website feeding it the proper input, and checking the output against the expected.  Once  the automated test suite is written, minimum human intervention is needed,  neither to run the web application, nor to analyse the result;  the automated test suite does it all,  and shows (say, by a  message  and  a  results  file)  which tests succeeded and which failed.

Let's  switch  for  a moment to some example - testing a  form.  Forms are an integral part of any Plone website and and an excellent means to assess your business.  They are used to engage users, provide support, sell products and services, etc. A badly designed form, or one that was poorly tested can and will  frustrate your visitors into leaving with a bitter after image of your company. And you definitely don’t want such reaction from, say, payment or order form. To prevent this from ever happening, once the visual check of the form is done,  your form must undergo a battery of automated tests to check if everything works as it should under any circumstances and inputs.

WHY PERFORM AUTOMATED TESTING?

AUTOMATED WEB TESTING SAVES TIME AND MONEY

Even  though we should be willing  to invest time and effort into writing automated  test scripts, there's no reason to invest more than we have to. Actually,  because test automation in Python might seem at first like such a luxury, and people are therefore not willing to write automated test scripts, creating automated test suites for application testing should  be  considered as an investment and a risk prevention tool. And just after a few months into a project,  the  costs  of  building  automated test scripts are paid off not just by detecting hidden defects, but also by the  fact that test scripts, once written, save a lot of testing time. It's so much easier to execute an already-written automated test script than to perform manually even a tiny bit of corresponding test cases, especially if they require a complicated set-up. Since web application testing will actually have to be performed a few times before the  program  finally works,  money spent on creating an automated test suite  (assuming that it's been written along with  the code, or even earlier)  can be repaid before the application is even released. Also, a set of automated test scripts tends to have  a  longer  lifespan  than the source code. A program can be redesigned -- even re-written in another language -- and, assuming  that it was meant to perform  the same as before, the test suite will work just as well. Once the up-front costs of  writing  automated test  scripts  have  been  recouped,  the pay-offs  can pleasantly surprise you.

AUTOMATED WEB TESTING EXPANDS TESTING COVERAGE

Automated web testing increases the depth and the scope of tests to help improve web application quality. Long and  more complex application testing that is  often avoided during manual testing can be performed with no human intervention. Automated web test scripts, written in Python each time can easily run thousands of different complex test cases providing unimaginable coverage that could take years with manual testing. Testers freed from repetitive manual tests have more time to create new automated test scripts and deal with  more complex features.

Furthermore, even the largest QA team cannot simulate even a hundred users simultaneously browsing the website. Automated testing with Python as major scripting language can recreate tens, hundreds or thousands of viewers interacting with network or web services and applications, thus boosting the quality of  application.

WEB TEST AUTOMATION WITH QUINTAGROUP

Quintagroup Quality Engineers are  well-versed in both commercial and open source test automation tools.  We strongly believe that Python web application development  is incomplete without thorough automated testing to ensure a sound platform for future reliability. That is why we implement data and keyword-driven automated test scripts, written in Python using robust Robot framework, Selenium and OpenCV.

Test Automation Tools

Robot Framework is a next generation  test automation  framework that leverages the power of open and extensible architecture, designed for acceptance testing and acceptance test-driven development (ATDD). For maximum coverage our team uses it together with SeleniumLibrary —a Robot Framework test library that uses the Selenium web testing tool internally.

To provide cross-browser testing, Selenium  is used with

  • Selenium IDE for  scripting quick bug reproduction tests and automated exploratory testing
  • Selenium WebDriver to create complex  regression automation test scripts,  while driving the browser natively as a user would

OpenCV is widely used for real-time graphics processing. It allows performing  a complete check of all the graphical content, including videos, motion graphics, 3D, etc.

py.test is a full-featured testing tool written in Python. This framework can be used for both simple unit and complex functional testing.

With Xaut Python library we are able to simulate keyboard and mouse use, as well as manipulate windows.

Test Automation Services

Our team of Python developers and Quality engineers armed with exceptionally powerful automation tools and more than 10 years of experience  can provide you with star-quality performance of your web applications and services by selecting:

  • Automation testing  of web applications
  • Automated testing framework development
  • Automated cross-browser testing
  • Automation testing  of web services
  • Automated acceptance testing to ensure the correct performance
  • GUI Test Automation

So, invest now to gain all the benefits that come with automated web testing for Plone or contact us to learn more on how we can help you promote and secure  your business.

Testimonials

It is a pleasure working with the Plone developers at Quintagroup. They are very knowledgeable, efficient, and customer-focused. I have found Plone to be a powerful and user-friendly Content Management System.

August 13, 2013
Robert Loftur-Thun

Wonderful Plone developers. Fast, efficient and very knowledgeable.

August 12, 2013
Jason Atwood

Thanks a lot... I've always appreciated the level of services provided by your company, I'm a big fan and shall continue to advertise your services among my fellow Zope developers!

Nov 30, 2011
Dominique Trembloy

I have used a Plone site environment hosted by Quintagroup to develop a workflow application for my business. Since January 2010 ... I have been a customer of Quintagroup and I am very happy about the good and reliable service, including update of the website to version 4.1 of Plone.

Apr 20, 2011
Maarten de Vries
www.insolweb.info

...I was a very satisfied customer for 7 years. They made sure that my website was always up, even during a couple episodes of being "slashdotted", and fixed the very few problems that I had in record time. This is a very professionally run outfit...

Feb 14, 2011
Mario Butter

http://silent-tower.org

I just want to thank each of you for your work... My business has increased and my anxiety level has been lowered since using Plone...It's been such a pleasure working with a professional and intelligent group like your.

Tom Parish
http://tomparish.com

Follow