During my three years at Socialtext, I helped maintain a test tooling system through a user interface that was advanced for its time. O'Reilly took it as a case study in the book Beautiful Testing. The team at Socialtext uses the same framework today, although it now has several tests running at one time on Amazon's Electric Compute Cloud. Although we had a great deal of GUI-driving tests, we also had developer-facing (unit) and web services (integration) tests, a visual slideshow that testers could watch for every browser, and a strategy to explore by hand for each release. This combination of methods to reduce risk meant we found problems early.
The platform is not just handy, it is also powerful, giving users absolute control over financial management. It has a myriad of useful features such as P and L, cash flow statements and balance sheets creation, to name a few. The dashboard is pleasant to the eyes and is able to display financial overviews and graphs. Aside from these, the solution is also capable of streamlining other back-office functions.
However, as businesses grow, they’ll likely need to implement more controls over their business processes and better alignment between information and operational technologies. At this stage, they should consider investing in business process management software to help them standardize processes and workflows for multiple departments and improve operational performance. (Not to be confused with general "business managment" software, "business process management" software carries a more specific definition and set of technical requirements. Follow the link above to read our buyer's guide and learn more.)

Unlike many accounting software products that limit transactions unless you purchase a more expensive package, FreeAgent is a cloud-based program that supports unlimited users, clients and invoices for one monthly price. It also has a project management feature to help you keep track of billable hours and expenses. FreeAgent is best for freelancers, consultants and other project-based businesses. freeagent.com
Looking up the list, we’d probably begin with Wave – their billing & invoicing services may not have the bells & whistles QuickBooks does, and you may not be able to infuse that much branding material in your docs, but they’ll get the job done for free. Zoho Books is the next-to-the-best service, as it lets you bill 25 clients for as much as $9 a month. FreshBooks, QuickBooks, and Xero are slightly more expensive (pricing starts at $15) and restrict their low-tier package to a smaller number of billed clients, but they will suit you perfectly if you want to customize and categorize invoices, and to report on your billing activity.

The method or process being used to implement automation is called a test automation framework. Several frameworks have been implemented over the years by commercial vendors and testing organizations. Automating tests with commercial off-the-shelf (COTS) or open source software can be complicated, however, because they almost always require customization. In many organizations, automation is only implemented when it has been determined that the manual testing program is not meeting expectations and it is not possible to bring in more human testers.
Some business applications are built in-house and some are bought from vendors (off the shelf software products). These business applications are installed on either desktops or big servers. Prior to the introduction of COBOL (a universal compiler) in 1965, businesses developed their own unique machine language. RCA's language consisted of a 12-position instruction. For example, to read a record into memory, the first two digits would be the instruction (action) code. The next four positions of the instruction (an 'A' address) would be the exact leftmost memory location where you want the readable character to be placed. Four positions (a 'B' address) of the instruction would note the very rightmost memory location where you want the last character of the record to be located. A two digit 'B' address also allows a modification of any instruction. Instruction codes and memory designations excluded the use of 8's or 9's. The first RCA business application was implemented in 1962 on a 4k RCA 301. The RCA 301, mid frame 501, and large frame 601 began their marketing in early 1960.

Automation frameworks are combined with specific automation tools to create a sound basis for your specific project goals. Automation tools are then aligned with testing goals. When the framework and tools are combined with common practices and coding standards for testing software, you have an automation framework. Jones offers an example using the most popular open source automation technology used for testing a web browser’s user interface (UI).

With EasyForm Expense Management, employees will no longer have to physically submit expense reports. Users can take a snapshot of their receipts and easily upload them alongside their expense claims. Thereafter, managers can quickly approve or reject expense claims based on acquired data and audits. The software also utilizes GPS technology for reconciling travel-related expenses by tracking distance traveled during a business trip. Its travel intelligence capability also provides useful insights on how to better optimize one’s cost and spend.

Hazen uses the term “automagic” to get people to think about what their goals are for using automation tools and technology for their specific project needs. He cautions against assuming the use of automation testing tools is a cure-all or silver bullet solution. As Hazen points out, automation testing is still dependent on the people performing the testing.

A subscription to Xero runs varies depending on the plan you choose. Xero will handle five invoices for you, pay five bills and reconcile up to 20 transactions a month with the starter version. You get unlimited reconciliations, invoices and bills with the Standard or Premium plans, and the Premium plan will also handle payroll for you. You’re not locked into the plan you choose — you can change at any time.
During my three years at Socialtext, I helped maintain a test tooling system through a user interface that was advanced for its time. O'Reilly took it as a case study in the book Beautiful Testing. The team at Socialtext uses the same framework today, although it now has several tests running at one time on Amazon's Electric Compute Cloud. Although we had a great deal of GUI-driving tests, we also had developer-facing (unit) and web services (integration) tests, a visual slideshow that testers could watch for every browser, and a strategy to explore by hand for each release. This combination of methods to reduce risk meant we found problems early.
Running a small business is hard and challenging. Many don’t survive past the first, few years. Using the right apps can make a big difference in helping you overcome the basic issues that every small business owners runs into when they have their own operation. They help you get organized, streamline your workflows, and get more done with greater efficiency and reliability.
Unique on this list, the Galen Framework is designed for those who want to automate their user experience testing. Galen is a niche, specific tool that can be used to verify that your product is going to appear as it should on most platforms. Once testing has been completed, Galen can create detailed reports, including screenshots, and can help developers and designers analyze the appearance of their application over a multitude of environments. Galen can perform additional automated tasks using JavaScript, Java, or the Galen Syntax.
Come to Infusionsoft for the CRM, stay for the marketing automation. Infusionsoft offers a low monthly fee for a single-user account, which includes CRM, marketing automation, and unlimited email sends. Need more user accounts to get more done? Infusionsoft charges a low monthly price per extra user. Growing teams can also add sales pipeline and ecommerce modules.
Sage Intacct is a cloud-based financial management platform that houses cloud computing and accounting in a single tool. The product’s apps are used by a wide array of businesses as they are preferred for AICPA business solutions. Designed to improve business performance and financial productivity, Sage Intacct is being offered by many accounting firms and resellers to their clientele.
Crispin and Gregory define Test-Driven Development (TDD) as the process of writing and automating small unit tests before writing the piece of code that will make the test pass. TDD is used for continuous integration testing to ensure small units of code work together first. A unit test verifies the behavior of a small part of the code in the overall system. These tests are the primary candidate for the majority of automated tests. Even teams that are not practicing Agile development use TDD to prevent defects and design software (Agile Testing, 2008).
In the early days, perhaps the most noticeable, widespread change in business software was the word processor. Because of its rapid rise, the ubiquitous IBM typewriter suddenly vanished in the 1980s as millions of companies worldwide shifted to the use of Word Perfect business software, and later, Microsoft Word software. Another vastly popular computer program for business were mathematical spreadsheet programs such as Lotus 1-2-3, and later Microsoft Excel.

Email marketing is still a force to be reckoned with, even though it was one of the first forms of digital marketing to take off. In an age of social media, blogging and text messaging, email marketing is going strong because of the powerful results and conversion rates it gets for businesses of all types. Two email marketing services in particular are helpful to small businesses:
With accounting software, these tasks were automated and costs and human errors were remarkably reduced, making them indispensable tools for just about any type and size of business. What’s very interesting is that accounting platforms are now being used even by small businesses. These startups often need the basic functionalities that most of these platforms share.

Built for small businesses to enterprises, EasyForm Expense Management provides users with an easy way to control, track, and manage their expenditures to enhance their bottom line. This online expense tracking and management solution paints a clear picture on all expenses through complete visibility on expense records and various reporting tools, such as category and split reports.
Manual software testing is performed by a human sitting in front of a computer carefully going through application screens, trying various usage and input combinations, comparing the results to the expected behavior and recording their observations. Manual tests are repeated often during development cycles for source code changes and other situations like multiple operating environments and hardware configurations. An automated testing tool is able to playback pre-recorded and predefined actions, compare the results to the expected behavior and report the success or failure of these manual tests to a test engineer. Once automated tests are created they can easily be repeated and they can be extended to perform tasks impossible with manual testing. Because of this, savvy managers have found that automated software testing is an essential component of successful development projects.

Jones defines BDD as the process where teams use domain-specific language to express the expected behavior of an application through scenarios. She points out that this is not magic - there is automation code involved in the process - but that BDD is ideal for developers and testers sharing automation work. Specialized tools like Cucumber, the most popular open source tool for automation code integration, executes this work and is the tool of choice for Jones.
An important part of UI testing is verifying typical use cases. For example, a typical use case for a hotel booking website includes searching for an available room, selecting one, entering reservation details, and confirming the booking. When the test should be successful for the data values provided, it is called a “happy path scenario.” Functional testing also validates the behavior of the application when no rooms are available for the desired date (the “sad path”) as well as when the user enters out-of-range dates for a reservation or an invalid credit card number (the “bad path”). Ranorex Studio’s data-driven testing automates the process of repeating a test for multiple data values so you can effortlessly cover the happy path, sad path, and bad path. Data values can be retrieved from an internal data table, external Excel file or SQL table. Since the test data is stored separately from the test procedure, adding or changing scenarios is a snap. For more complex scenarios, Ranorex Studio supports local and global parameters, keyword-driven testing, and conditional test execution.
Jones recommends flexible automation frameworks and cautions against using a framework limited to only UI testing, for example. Some test teams build their frameworks from scratch to satisfy the desired result of the test automation code and activities. According to Jones, most test automation initiatives fail due to the poor design of the test automation framework architecture for that project.
Many of the systems we’ve reviewed are just cut for freelancers, with configurable billing & invoicing, automated tax calculations, integration with all major banks, and of course – reports and metrics that comply with your needs. A large portion of them are also extremely affordable, but so that you stay on the safe side, we recommend you to look exclusively at online and cloud-hosted technology. Pick natively integrated systems instead of hiring a developer to build software connections from scratch, and pay attention to scalability so that your prospective system can handle sudden workload spikes.
Quicken lets you manage both your personal and business finances in one place, making it a convenient solution for really small businesses and home-based entrepreneurs who don't need accounting software designed for larger or more established businesses. The downside, however, is that the software isn't cloud-based and is only available for Windows, though it has iOS and Android apps that allow you to view your data. quicken.com

Citrus Framework is an automated testing tool with integration framework for messaging protocols and data formats. HTTP, REST, JMS and SOAP can all be tested within the Citrus Framework, outside of broader scope functional automated testing tools such as Selenium. Citrus will identify whether the program is appropriately dispatching communications and whether the results are as expected. It can also be integrated with Selenium if another front-end functionality testing has to be automated. Thus, this is a specific tool that is designed to automate and repeat tests that will validate exchanged messages.
The last segment covers enterprise level software applications, such as those in the fields of enterprise resource planning, enterprise content management (ECM), business process management (BPM) and product lifecycle management. These applications are extensive in scope, and often come with modules that either add native functions, or incorporate the functionality of third-party computer programs.
Unified Functional Testing (UFT) is a well-known commercial testing tool for functional testing. It provides a comprehensive feature set for API, web services, and GUI testing of desktop, web, and mobile applications across platforms. The tool has advanced image-based object recognition feature, reusable test components, and automated documentation.
The move to agile has led many teams to adopt a pyramid testing strategy. The test automation pyramid strategy calls for automating tests at three different levels. Unit testing represents the base and biggest percentage of this test automation pyramid. Next comes, service layer, or API testing. And finally, GUI tests sit at the top. The pyramid looks something like this:
SmartBear’s TestComplete is an easy to use automated UI testing tool. TestComplete supports cross platform testing and multiple scripting languages. It also instruments both iOS and Android native apps. In addition, TestComplete offers a record and playback feature and uses the Google Chrome browser to emulate all other browsers. Test Complete does not test on native iOS Safari or Android Chrome.

Paying bills isn't as much fun as sending out invoices, but it has to be done. You may already be managing this task through your bank's website, which may or may not excel at this service. There are few other options online for standalone bill-pay, and the ones that exist have restrictions. Bill.com rules when it comes to supporting both invoices and bills; you'll be charged $29 per user per month for payables automation only. If that's more than you want to pay, you could subscribe to Wave, which is free, and just use its bill-paying tools.
The flowchart-based accounting of QuickBooks is as close to a standard in financial management as the small-business world has, and it's arguably the easiest way for nonprofessionals to transfer their books from the filing cabinet to the computer, where they belong. Most actions, from cutting a check to billing a client, are just a click or two away from the start screen. ($200)
So what should small businesses look for in such an app? For starters, ease-of-use, integration and security should be taken into consideration. However, what counts most is the pricing. As most of these players are on a tight budget, we recommend that they subscribe to a cloud-based solution as they provide customized processes, integrations and pricing flexibility.

This approach works fine for the first weeks, when running checks only takes five minutes. Over time, though, five minutes turn into an hour, then two, then three. Before you know it, testing locks up the tester's computer or test environment all afternoon. So you start kicking off automated test runs at 5 am or 5 pm and get the results the next day. Unfortunately, if something goes wrong early on, all the results will be corrupted. That slows to a crawl the feedback loop from development to test, creating wait states in the work.

The principles of software development are just as valid when writing tests. Just like you don't want monolithic code with many interconnected parts, you don't want monolithic tests in which each step depends on many others. Break your flows down into small, manageable, and independent test cases. That way, if one test fails, it won't make the whole test suite grind to a halt, and you can effectively increase your test coverage at each execution of your automation suite.

Although this a complete list of the best software for small businesses in each of these categories, there might be other options that work better for your company. Click on the category headers below for a full list of available products. For personalized recommendations based on your business needs call one of our Technology Advisors at 877-822-9526 for a free, 5-minute consultation.