The bigger they are…

It took me a while to understand this concept but it served as a nice metaphor for the business I am currently in. If I take a look at most Web infrastructures, the bigger they are, the more complexity gets introduced thereby making the whole thing a bit less stable. Ironic isn’t it?

I had a football coach once tell me to make sure to “hit the biggest guy” on the field.  When I pressed him on this somewhat scary assignment, he reasoned, “it’s typically the bigger guys that are the most fragile.”

It took me a while to understand this concept but it served as a nice metaphor for the business I am currently in.  If I take a look at most Web infrastructures, the bigger they are, the more complexity gets introduced thereby making the whole thing a bit less stable.

Ironic isn’t it?

Adding more redundancy and real time availability makes the environment somewhat less stable.

Today’s advanced websites take advantage of great innovative solutions to serving more data to more people in more regions.  Technologies like cloud storage, elastic computing servers, memory caching techniques, content delivery networks and don’t even get me started on creating multithreaded nodes with a Cassandra ring.

All that said, a fault at any one of these spots, however minute, can create a ripple effect that can eventually bring down a server.  Case in point, how about Amazon.com going down yesterday for approximately 30 minutes.  Amazon not only has one of the most advanced infrastructures available, they also make this reliability a focus of their core business they offer to customers.  Estimates from Forbes.com suggest Amazon lost about $66,000 PER MINUTE!

So if Amazon can go down, pretty much anyone is at risk.

Luckily there are advanced monitoring and performance solutions available to help customers try to replicate and understand where things might be going wrong.  Being able to simulate varying load at a number of different locations proves key to trying to pinpoint issues.  Mixing this with tools that identify when users are experiencing reduced response times will give IT & network admins all the forensic information they need to fix a problem.  I tell our customers, 90% of the “effort” is finding the problem.  Fixing it is the easy part.  Moral of the story, just like hitting the “big guy” on the football field, make sure to performance test your websites and nodes under a variety of situations.

Archie Roboostoff

 Avatar

 

7 Tips for mobile success

Mobile apps need to work smoothly across many existing platforms while meeting the requirements of handsets still in development, so the testing process can be daunting. Chris Livesey has 7 tips to help remove the scare factor

Follow some simple tips to ensure quality in mobile app testing

Mobile apps need to work smoothly across many existing platforms while meeting the requirements of handsets still in development, so the testing process can be daunting.

Systems must withstand frequent changes and keep pace with rapid developments. Mobile testing scripts also need to be modified easily and portable across platforms – not least to avoid having to repeat work already done, which could cause delays and increase costs.

Tip 1: Mobile apps should also be tested in a way that reflects user behaviour.

Tip 2: Industry standard languages that support greater stability should be encouraged. Java or C# will integrate with any continuous delivery system.

Tip 3: The testing solution should also support multiple iterations of mainstream mobile development platforms.

Tip 4:  Real traffic from native apps that mimic real devices should increase the accuracy of performance testing.

Tip 5: In future, more people are likely to use the app, so think about testing it on a global scale.

Tip 6: Use emulators and simulators. This can reduce the legwork. Additionally, test for the real world by covering and replicating real mobile bandwidth speeds such as GPRS, EDGE, UMTS, HSDPA, HSPA+, and LTE.

Tip 7: Identify the correct testing subset. It is unrealistic to expect to be able to test your app on every known device and mobile OS, so identify the key players and recalibrate as required.

mobile-test-blog-banner-(1)

I believe people expect instant gratification today, so devices must work – and work fast. Apps should load quickly on the go. Performance testers say that seven seconds can cost you £7 million; meaning that a delay in performance can seriously affect the bottom line.

Following the tips above, resellers and SIs can make sure mobile testing meets market needs and demands.

Chris Livesey

 

Avatar

Is Automation Testing working for you?

When organizations acquire automated testing tools, the tendency I have seen is for the organization to dive in with both feet. This is very understandable and natural. Upper management is looking for immediate results because they made a capital investment. Middle management and leadership want quick relief from the burden of more test cases to run than time and resources allow. The technician or engineer is excited to have new technology, and management is looking to the technical layer to deliver on the “promise” of automation to help solve all of the problems.

Automation Testing was supposed to speed up the testing process, but now we are falling behind.

When organizations acquire automated testing tools, the tendency I have seen is for the organization to dive in with both feet. This is very understandable and natural. Upper management is looking for immediate results because they made a capital investment. Middle management and leadership want quick relief from the burden of more test cases to run than time and resources allow. The technician or engineer is excited to have new technology, and management is looking to the technical layer to deliver on the “promise” of automation to help solve all of the problems.

All these dreams can become a reality but to do too much too soon without clear direction can be a path to failure.  However with a clear path many groups have been able to realize greater success, delivering quality product to market that wouldn’t have been possible without test automation.

There is also the potential of spending more time, more effort and more capital than maintaining a manual testing processes. The difference, in my opinion, resides in the automation framework employed and the processes supporting automation. Proper automation tooling must align with the technology being tested and feature-level functionality required for a specific working environment. Proper framework adoption addresses a complimentary business aspect, the need to fit the automation tooling to the people, the organization and the business processes.

What is an automation framework? 

There may be a variety of responses to this question. I have seen highly technical responses that express that a framework is the sum of the functions and  routines that facilitate automation script development and execution. I have heard that frameworks are an abstraction layer that structures automation design and implementation. I have been guided to see frameworks as a series of processes and practices which control the creation and running of automation assets. Which definition is right, all of them or none of them? I welcome feedback from the testing community at large…..

I suspect that the appropriate definition is subject to our personal context. In some contexts, such as leveraging JUnit as a testing framework, a technical definition is more accurate. In a more conceptual environment like the use of Cucumber as an automation framework, defining the term framework more as an abstraction layer makes more sense. When off-the-shelf packages are employed, basic or initial approaches with the tooling leveraging best practices and standards for use may serve as a process centric framework with the more technical aspects being obscured or provided intrinsically by the tooling itself.

Please argue with me. Or, please agree with me. That is the intent of this blog. Test automation is evolutionary. Your participation contributes to how this aspect of our field grows.

In upcoming blogs I hope to keep this conversation going and expand this discussion to cover topics such as what elements are considered when designing a framework for automation, types of frameworks and how automation frameworks may be applied across business roles.

Chris Meranda

 Avatar