With capability and frugality firmly in mind, we rounded up 25 of our favorite software tools and Web services that we deem the best for powering small and medium-size businesses. Of course, not every business needs every type of program or service, but if your small business could use some help in any of the categories below, our list will give you a pretty good shot at picking a winner.
Alan Page is an author with more than two decades of experience in software testing roles, the majority spent in various roles at Microsoft. He offers another perspective on the importance of distinguishing automated and manual testing. In “The A Word,” an ebook compilation of his blog posts on automation, Page mentions that most of his commentary on automation focuses on the “abuse and misuse” of automation in software testing and development. He is skeptical of replacing manual testing activity with test automation, as you can see from the his Twitter feed:
But if the company had one shared test environment where changes needed to be negotiated through change control, that might not actually save any time. We'd have a big, fat bottleneck in front of testing. As Tanya Kravtsov pointed out recently in her presentation at TestBash New York, automating the thing that is not the bottleneck creates the illusion of speed but does not actually improve speed.
There’s nothing like having to handle several projects at the same time to test your organizational skills as a small business owner. While challenges are always good, your managing many tasks at once will only leave you drained and feeling swamped. Instead, rely on the following project management tools to ensure you can keep your project on target, and please your clients at the same time.
Intuit QuickBooks Online offers a range of features for all types of small businesses. This includes freelancers, consultants, online merchants, store and restaurant owners, service providers and more. Whether you're just starting out, expanding or have an established business, QuickBooks Online is packed with basic and advanced features to meet your accounting needs. [Go here for a full review of QuickBooks Online accounting software.]
In software testing, test automation is the use of special software (separate from the software being tested) to control the execution of tests and the comparison of actual outcomes to predicted outcomes. Test automation can automate some repetitive but necessary tasks in a formalized testing process already in place, or add additional testing that would be difficult to perform manually.
Infusionsoft Complete manages email campaigns with a “Custom Campaign Builder” feature that can target recipients based on your contacts list. It will monitor your website, recording number of visitors, sales, and how long each visitor lingered—an invaluable wealth of information if your business is Internet-based. And if you’re not yet Internet-based but want to be, the software can help you design a landing page.
Selenium is possibly the most popular open-source test automation framework for Web applications. Being originated in the 2000s and evolved over a decade, Selenium has been an automation framework of choice for Web automation testers, especially for those who possess advanced programming and scripting skills. Selenium has become a core framework for other open-source test automation tools such as Katalon Studio, Watir, Protractor, and Robot Framework.
But if test automation is so limited, why do we do it in the first place? Because we have to, there is simply no other way. Because development adds up, testing doesn’t. Each iteration and release adds new features to the software (or so it should). And they need to be tested, manually. But new features also usually cause changes in the software that can break existing functionality. So existing functionality has to be tested, too. Ideally, you even want existing functionality to be tested continuously, so you recognise fast if changes break existing functionality and need some rework. But even if you only test before releases, in a team with a fixed number of developers and testers, over time, the testers are bound to fall behind. This is why at some point, testing has to be automated.
A test automation framework is an integrated system that sets the rules of automation of a specific product. This system integrates the function libraries, test data sources, object details and various reusable modules. These components act as small building blocks which need to be assembled to represent a business process. The framework provides the basis of test automation and simplifies the automation effort.