“The Best” of the Best Practices for Test Automation


If I were to write about the benefits of test automation, rest assured that you would be reading all about the enhanced reliability it provides, its laser-like accuracy, and far-reaching coverage. And of course, I would certainly make sure to stress how it can drastically improve product quality, reduce time-to-market, and perhaps most valuable of all, bring with it a high return on investment. 

However, I am not writing about the benefits of test automation, although they are indeed impressive when all laid out like that. Instead, I have chosen to write about something that is arguably much more valuable than the benefits of test automation to your business: how to achieve them. And just like most things done well, it requires the right procedures, the right strategies, and of course, the “right” best practices. 

Automation Testing Blockchain For Improved Speed and Quality, Part 1


Today we will discuss the importance of software testing in blockchain, outline benefits of automation testing and explain how to get involved in the Quality Assurance of our open source project. This is part one of the two-part blog post.


Many blockchain projects don't survive long after hitting the initial production state. For most, the lack of proper software testing is one of the main reasons for their demise. It's estimated that over half a billion dollars worth of cryptocurrency has been lost due to bad code in the last year alone. You probably heard about The DAO's code loophole, which allowed attackers to drain out 3.6 million ETH (worth $70 million at the time) from the Ethereum-based smart contract. Another notorious case was the Parity bug which resulted in over $150 million permanently frozen. Even Bitcoin itself is not immune to hacks. Late last year, a bug discovered in the code allowed malicious individuals to artificially inflate Bitcoin's supply via double input. If the bug wasn't quickly identified and addressed, it could have had catastrophic effects on the network. This is just the tip of the iceberg — there are plenty of smaller incidents caused by inexperienced or inattentive developers that don't make the headlines.

Neodymium: an Open-Source Framework for Web Testing

As a company focused on quality assurance and testing, Xceptance always needs test automation software, especially end-to-end automation software. Several years ago, we built a Firefox add-on that was designed to create and run browser automation. The tool was primarily used by people who didn’t necessarily have a strong background in software development. Today, the landscape is a bit different: Mozilla cut the cord on the APIs we were using, and standard programming languages have largely taken over test automation because they are more flexible and less proprietary. These changes convinced us it was time to implement an idea we had already hatched, namely our own open-source test automation project: Neodymium. It is written in and utilizes the Java platform, it is MIT licensed, and of course, you will find it on GitHub.

Basis 

There are many libraries out there to aid web automation in Java, so developers are faced with the task of choosing ones they like and somehow making them work together. On top of that, there are tasks that require some custom code to work properly. We identified the overall tooling problem mostly as a hurdle in getting started and setting up a project. Finally, there are always things missing such as test data handling, concurrency, and common patterns, which you don’t want to have to develop yourself.

Selenium: Can it Compete With Cypress and TestCafe?

Good, Old Selenium

Is tooling finally moving forward? Can or should we say goodbye to Selenium? If so, what are the successors?

Working in IT as a Test Automation Professional made us all come across Selenium at some point. Selenium is a widespread tool that has some exciting features and a number of frameworks built on it with even more features and flexibility. When properly set up, they definitely provide us with reliable tests.