Sunday, 18 March 2018

How relevant is Software Testing in a DevOps Era? Top 5 reasons





The intense competition amongst software companies or more specifically software testing companies to test and release high quality products quickly (daily, hourly or even within minutes) to catch the attention of the elusive customers has introduced the concept of Agile. DevOps or the integration of IT and Operations wings of an organisation is the logical conclusion of the Agile way of developing a software with built-in software application testing mechanism.

DevOps has brought about the concept of continuous development, integration and deployment. So, can software testing or quality assurance carried out by the software testing companies be left behind? The answer is an emphatic NO. It is for ensuring the quick release of ‘high quality’ products with automation in the hands of customers. Moreover, the integration of software testing or quality assurance by the software testing companies into the entire DevOps ecosystem is simply a foregone conclusion.

Why Test Automation is important in DevOps?

The objective is to release high quality applications quickly into the market, followed by enhancing the product even further based on customer feedback. Software testing companies need to incorporate automation, as manual testing will be simply inadequate to meet the challenge. Thus, automation of software testing holds the key in a DevOpsenvironment to ensure everything works in clockwise precision.

The top five reasons why software testing will continue to stay relevant in a DevOps era are as follows.

Changing market dynamics: The market is flooded with new applications in every possible domain. To stay ahead in the competition, companies need to ensure quality and tailor their products and services to meet the changing market dynamics on a real time basis. For example, if a software product already in use by the customers needs a bug to be fixed or an update to be carried out, doing the same manually is next to impossible. This is where the integration of software application testing automation on a real time basis is needed. DevOps becomes important in such scenarios, where Continuous Testing and Continuous Deployment is done.

QA the facilitator: In the DevOps scenario where the primary objective is to achieve quality and speed, quality assurance should be taken as a responsibility by both the development and operations teams. If software application testing is not made a part of continuous integration and deployment, the twin paradigms of DevOps, then the whole purpose of implementing DevOps fails. Hence, software testing companies can breathe easy, for the advent of DevOps will make them even more relevant than ever. 

Read more:

https://medium.com/@michaelwadejr12/top-5-reasons-why-software-testing-will-continue-to-stay-relevant-in-a-devops-era-e5e2a641124c


Thursday, 15 March 2018

The Best 4 Ways to Build a Selenium Testing Strategy

                     



The need for software testing in the entire SDLC process has increased for various reasons. Ranging from ensuring the quality of software, shorter software lifecycle by preventing rework, faster time to market and customer satisfaction to achieving brand popularity and ROI. However, testing per se need not ensure the above objectives given the limitations of the manual way of doing it. This calls for the automation by using a number of tools, both open source and licensed. Open source tools (read dynamic web applications) such as JUnit, WebDriver, SOAP UI, JMeter or Robotium, and Selenium take the cake by a long measure.



What is Selenium Testing?



It is an open source user interface driven automation tool for faster testing of web applications by covering a large number of test scenarios. Apart from being freely available, Selenium functional testing can provide a slew of key benefits such as;



  • Easy to write reliable and maintainable test scripts by using popular languages like Java, PHP, Perl, C#, Ruby, .Net, Scala, Groovy and Python through the use of a domain specific language called Selenese.



  • No need to learn a specific test scripting language like Selenium IDE thanks to the presence of a record or playback tool.



  • Testing can be performed on any of the OS platforms, be it Windows, Linux, or Mac.



  • The testing process is not limited to a single browser but can be carried out on any browser such as Chrome, Bing, Safari, Opera or Firefox.



  • Can be used with other testing tools such as JUnit or TestNG to generate reports and carry out further testing.

 

Nonetheless, the benefits of opting for Selenium testing services involves the following aspects as well.



  • Being open source, there is no specific support for Selenium save for the ones provided by the user community.



  • To enable image based testing one needs to integrate a software called Sikuli.



  • Carrying out Selenium testing in fast moving environments can be difficult.


Testing can be quite slow vis-a-vis an API level test. This can have a significant bearing when the demand is for a faster feedback.

Read more: https://medium.com/@michaelwadejr12/how-to-build-the-right-selenium-testing-strategy-in-4-ways-580a04ace761



Tuesday, 25 July 2017

What impacts the Automated Business Process Testing of Workday Applications?




ERP platforms such as Workday manage the entire business processes of a company by integrating and leveraging their strengths. It removes redundancies present in each of the processes and improves their efficiency, thereby positively impacting the delivery of products or services, not to mention improving the end user experience to a great extent. Workday is also home to a slew of applications developed by various companies using the platform pertaining to various functions. These applications or the in-house ones used by Workday need to follow vigorous Workday testing services so that they can perform seamlessly on expected lines.  
As opposed to manual testing of business processes, which can take an inordinately long time, automation of Workday testing services can help increase efficiency, scale up the testing parameters, and improve the overall quality. However, while going about developing a Workday testing strategy for automation, a few things are needed to be considered:

Prepare a workflow diagram: Each segment of the overall business process that forms part of Workday ERP platform performs a particular task, and so should be fully understood by the Workday testing services while developing Workday testing strategy. Thus, the first step in undertaking Workday test automation is to prepare a workflow diagram of each process and its sub process. This can help in achieving the following:

·         Help the team of Workday test automation to understand various processes and agree to a singular design methodology
·         Identify the bottlenecks in a process or sub process
·         Help in removing redundant process or sub process
·         Help people associated with Workday testing services provide fresh perspective on the processes
·         Get information about the integration points with other software platforms
·         Help in building afresh or strengthening existing security related safeguards
·         Eliminate delays during implementation

Prioritize the test sequence: Before embarking on Workday test automation, the Workday testing strategy should include listing and sequencing of the parameters to be tested. In fact, the testing team should consider each function and various processes pertaining to it in terms of their inputs and outputs. Besides, the sequence in which they are to be tested is to be prioritized. For example: in the sales function, the team constituting Workday testing services should define the fields of say, vendors. 

Conduct of negative testing: The Workday test automation should put emphasis on negative testing, for it can find out various scenarios where the applications can crash, malfunction or give erroneous output. The processes should be tested for such inputs that violate business rules, and the output is checked thereof. Depending upon the output or the severity, suitable safeguards should be incorporated to prevent such inputs in the first place. 

Establishing triage: Workday test automation should include the establishment of a triage framework, wherein the priority of handling critical issues are decided. 

User acceptance testing: The most crucial part of Workday testing strategy that aims at automation, is the testing of application by users. These users should not be the ones who have developed the testing codes. This can help highlight hidden glitches that might be overlooked by the testing team. 

Conclusion
Automating the testing of Workday based business processes is crucial for removing bugs and improving efficiency. The process should be done methodically as detailed above for greater impact.  

Michael works for Cigniti Technologies, which is the world's first Independent Software Testing Services Company to be appraised at CMMI-SVC Level 5, and an ISO 9001:2008 & ISO 27001:2013 certified organization.