Business requirements change fast, the market is ever changing, and so must your Workday application. As you build new business processes, integrations, retire old ones, and tweak existing ones, a central element of workday application deployment is your testing process. How you test your applications decides how successful your application will be. A defect free product gives a better user experience, wider adoption and better ROI.
Workday application testing can slow down your Workday deployment if done the wrong way. But by following tried and tested best practices you can make your Workday testing fast, and make it a strategic advantage to your Workday application development.
There are many reasons why Workday testing can be slow. The kind of tools you use can enable or hinder your progress. Similarly, how you plan your tests has a bearing on the speed you experience when testing. Only by combining all these factors and optimizing them for speed can you take your Workday testing to the next level. Let’s look at the key factors that determine your speed of testing with Workday.
1. Decompose your tests
It’s the norm to run tests on multiple parts of the application spanning multiple features all at once. This follows the business logic closely, and looks to have few tests cover the entire business logic fully. It is close to the monolithic style of building applications where many components of an application are combined into one, or sometimes an entire application is a single unit. However, the modern microservices model proposes to decompose each feature and service separate from the rest of the application so it can be built, tested, and deployed on its own. Similarly, with Workday applications, the more you can decompose your features and test them separately, the more speed of testing you can achieve.
To do this, you need to take a look at your list of test scripts, especially the biggest ones, and think about how you can break them down into multiple smaller tests. Many functional tests and UI tests can be broken down into unit tests and executed in a much easier way. This may seem counterintuitive at first as it involves a lot of work, and re-architecting your tests from the ground up. However, the real benefit is when you add new tests, or change existing ones. Rather than having to write a new test script from scratch, you can leverage parts of a previous test and just write parts of the new test that are unique to this test. If there are many common components across tests, they can be shared and reused horizontally between tests.
There are many more benefits to decomposing your tests and we’ll flesh them out in the remainder of this article. But to start, decomposing your tests is one of the most powerful ways you can speed up your testing in the long term. It has ripple benefits, and though the initial effort is a lot, it is worth the effort. If you take nothing else away from this article, remember to decompose your tests to make them more manageable and speed up tests.
2. Automate your tests
Once your tests are more granular, the next most powerful thing you can do to speed up your Workday testing is to automate your tests. Running tests manually is error prone as it depends on humans, and we all know that machines are much more accurate and faster at executing clearly defined tests than humans. But apart from this, there are other benefits to automated testing for Workday. Speed is an essential advantage of automation. If you can automate tests, you can leave their execution to a tool while you focus on higher value activities like planning your test suite better. Automation also helps with improving testing coverage. As you can run many more tests in the same time frame, you can now cover a large portion of your codebase, and build more reliable applications. Reporting on tests also is improved as automated tests are also automatically recorded, and some testing tools allow you to playback the test and see where errors occur.
The benefits keep piling on with automated testing. The amount of human capital needed to run testing operations is reduced. So, as your testing scales, your team size doesn’t need to scale with it. You can handle an exponential number of tests with the same team size if you can figure out more optimal ways to automate your tests. Even at scale, your testing results are more accurate when they are automated. If run by humans, after a point the results take a hit as humans aren’t as good at operating at very large scale as machines can.
Apart from decomposing your tests, automating it is the next most powerful way to improve the speed and efficiency of your Workday testing.
3. Run important tests first
Following the 80/20 rule, 20% of your tests will account for 80% of the quality, and these tests should take the bulk of your planning and focus. You need to identify which are the top 20% of your tests that are most important for quality. Ensure these tests are prioritized over the remaining 80% of your tests, and are run first, and analyzed in more detail, and iterated upon more than others. By focusing your effort on this subset of tests you’ll also be able to drive speed of testing on these tests and improve your overall testing speed.
The remaining 80% of tests also need to be executed if your testing coverage is to be comprehensive, and for your app to be reliable and fully usable when launched. However, seeing these tests in perspective will help improve overall quality as you don’t want to spend time getting lost in rabbit holes by solving every testing error even if it’s trivial while you neglect the important errors.
4. Move to the cloud
If you run the bulk of your Workday testing manually, you have a lot to gain by moving automated testing solutions in cloud.
Cloud based testing happens in an environment that’s maintained by a vendor, stays constantly updated as it is SaaS-based. It is highly scalable leaving you to define how much resources you need for your testing on hourly basis and taking care of the provisioning. Additionally, you don’t just rent cloud servers on which you need to configure your testing tools and frameworks, you can an entire testing platform complete with test execution frameworks, reporting tools, and management features. You can have all your tests recorded in the cloud, and go back to any specific point in the test to view test results, errors, or steps during execution. This gives you deep insight into testing, and happens without you having to plan or manually record tests.
A cloud-based test automation tool like Genie brings all these advantages and is easy to get started with. Further, being a Workday-specific solution, Genie is deeply integrated with
Workday and intuitively gets workflows in Workday even if they span multiple teams and Workday resources.
The cloud is likely not a new concept to most Workday customers who probably have an ongoing migration happening if not already completed. Workday itself is taking big steps to open up its cloud platform to facilitate development. Being a SaaS product, Workday has deep genes in the cloud, and it’s natural that you as a Workday customer are a champion of the cloud. Yet, it’s very likely that certain processes like QA can get left behind and still keep their traditional approaches like testing locally. This is where change is needed, and to usher in this change you need to be convinced and aware of the benefits of migrating to the cloud.
In conclusion, testing speed is a by-product of doing many things right. In this article we outlined some of the key tactics to speed up your testing. It starts with decomposing tests and making them more granular. This gives you more control over every part of the testing process. It enables you to reuse test scripts where possible. It follows the modern microservices model, and is key to enabling speed of testing. Next, automating your tests is essential if you want to speed up testing. Automation bring speed of execution, more accuracy, parallel testing, and better reporting. Then, having a testing strategy that prioritizes tests gives you focus so you can speed up where it really matters. Finally, moving to the cloud is a fundamental requirement to truly enhance speed of testing. By keeping these best practices in mind, your Workday testing will be transformed, as will the final applications you release, and the business processes they empower.