“Silk4J runs all the automated tests and returns a comprehensive traffic-light report which is easy for us to analyze and determine the stability of the product.”
When the world’s leading companies want to improve business performance, increase operational efficiency, prevent financial crime, ensure compliancy, or enhance safety and security, they talk to NICE. With 25,000 customers, and 3,500 employees operating in 150 countries, NICE ranks among the world’s most innovative companies.
One of the NICE flagship offerings is its Workforce Management solution (WFM). With more than 2.7 million users globally, it is designed to gain visibility across the front and back offices, optimize scheduling, and automate time-consuming process tasks.
The WFM solution is in constant progression through an agile Javabased development environment including 10 developers and seven Quality Assurance (QA) engineers. The product changes on a daily basis and testing used to be a challenge, as Jayesh Doolani, Software Engineer for NICE, explains: “We had no tools to help us with functional software testing, so the process was very time-consuming and cumbersome. It was difficult to gauge the stability of the product before we released it to customers. It could take up to five people from our team to run the most vital tests and ensure a level of stability. Still, we never felt completely confident in the quality of our solution.”
When the team started looking into automated testing solutions, Micro Focus was recommended by colleagues in Israel. Silk Test® was evaluated alongside Selenium, an alternative automated testing solution. It was felt that Selenium was not optimized to work in the Java and desktopbased environment of the WFM solution. Silk Test includes Silk4J to create functional tests using Java. It provides a Java runtime library to include all Silk4J test classes that are supported for testing.
Silk Test and Silk4J were implemented at NICE and Jayesh was pleased to see how easy it was to create automated unit tests. The Silk4J runtime library is compatible with JUnit, which means the team can leverage the JUnit infrastructure and run Silk4J tests. Jayesh comments: “We quickly used Silk Test to develop a suite of tests that we run every night. 50 interdependent tests give us a really good indication straight away of whether the product is fit for release.”
The NICE team also use Silk Test for on demand regression testing. Once development has finished a new or enhanced feature, the QA team will automatically run regression tests for 40 key scenarios to ensure that no functionality has been adversely affected by the new development effort. QA engineers often use the ‘record and play’ functionality within Silk4J to rapidly build cross platform automation tests. They can easily create a single, portable test script once and execute against all supported browsers to receive a broad range of test results.
During the development process, Jenkins is used as Continuous Integration server. Through the bundling of JUnit with Jenkins, Silk Test is fully integrated for automated test execution.
The main focus of WFM is desktop based, with a mobile client in current development. Silk4J will be used as the automated testing solution for that, as well as for the WFM web application. Jayesh explains the day today use of the solution: “We have created a testing framework on top of Silk4J. Whenever a change is made to the product through our continuous integration and deployment process, the code is checked into Silk Test. We then run all unit tests and install it on a local server. Silk4J runs all the automated tests and returns a comprehensive traffic light report which is easy for us to analyze and determine the stability of the product.”
Whereas previously it took up to five QA engineers to determine the stability of the product, using Silk Test and Silk4J, this exercise is now done with only two people involved. Jayesh: “Based on productivity levels within the team, we estimate that we execute our testing phase twice as fast with help from Silk Test. It’s also such an easy solution to start working with. We recently had interns with us who were developing in Silk4J in no time.”
He likes the confidence this structured process gives to the outcome and concludes: “We have a goldmine of information every time we run Silk Test. A structured testing framework gives us, and our management, the confidence that we deliver a higher quality product that is stable in every conceivable customer scenario.”