Test Automation Software Comparison
Find the best Test Automation Software using real-time, up-to-date data from over 711 verified user reviews. Read unbiased insights, compare features & see. Feb 27, 2018 - Comparing Automated Testing Tools: Selenium, TestComplete. It's a proprietary software that can automate testing for web, desktop,.
Build automation involves scripting or automating the process of compiling computer source code into binary code. Below is a list of notable tools associated with automating build processes.
Make-based[edit]
- GNU make, a widely used make implementation with a large set of extensions
- make, a classic Unix build tool
- mk, developed originally for Version 10 Unix and Plan 9, and ported to Unix as part of plan9port
- MPW Make, developed for the classic Mac OS and similar to but not compatible with Unix make; the modern macOS (OS X) comes with both GNU make and BSD make; available as part of Macintosh Programmer's Workshop as a free, unsupported download from Apple
- PVCS-make, basically follows the concept of make but with a noticeable set of unique syntax features[1]
Make-incompatible[edit]
- Apache Ant, popular for Java platform development and uses an XML file format
- Apache Buildr, open-source build system, Rake-based, gives full power of scripting in Ruby with integral support for most abilities wanted in a build system
- Apache Maven, a Java platform tool for dependency management and automated software build
- ASDF LISP buildsystem for building LISP projects
- A-A-P, a Python-based build tool
- Bazel, Google's own build tool, now publicly available in Beta. Java-based.
- BitBake, a Python-based tool with the special focus of distributions and packages for embedded Linux cross compilation
- Boot, a Java build and dependency management tool written in Clojure
- boost.build For C++ projects, cross-platform, based on it Perforce Jam.
- Buck, a build system developed and used by Facebook
- Buildout, a Python-based build system for creating, assembling and deploying applications from multiple parts
- Cabal, common architecture for building applications and libraries in the programming language Haskell
- FinalBuilder, for Windows software developers. FinalBuilder provides a graphical IDE to both create and run build projects in a single application. Final builder also includes the ability the execute unit test, deploy web projects or install and test applications.
- Gradle, an open-source build and automation system with an Apache Groovy-based domain specific language (DSL), combining features of Apache Ant and Apache Maven with additional features like a reliable incremental build
- Grunt, a build tool for front-end web development
- Gulp, another build tool for front-end
- Leiningen, a tool providing commonly performed tasks in Clojure projects, including build automation
- Mix, the Elixir build tool
- MSBuild, the Microsoft build engine
- NAnt, a tool similar to Ant for the .NET Framework
- Ninja, a small build system focused on speed by using build scripts generated by higher-level build systems
- Perforce Jam, a generally enhanced, ground-up tool which is similar to Make
- Psake, domain-specific language and build-automation tool written in PowerShell
- Rake, a Ruby-based build tool
- sbt, a build tool built on a Scala-based DSL
- SCons, Python-based, with integrated functionality similar to autoconf/automake
- Stack, a tool to build Haskell projects, manage their dependencies (compilers and libraries), and for testing and benchmarking.
- Tweaker, allowing task definitions to be written in any languages (or intermixed languages) while providing a consistent interface for them all
- Visual Build, a graphical user interface software for software builds
- Waf, a Python-based tool for configuring, compiling and installing applications. It is a replacement for other tools such as Autotools, Scons, CMake or Ant
Build script generation[edit]
These generator tools do not build directly, but rather generate files to be used by a native build tool (as the ones listed in the previous two chapters).
- BuildAMation, a multi-platform tool, using a declarative syntax in C# scripts, that builds C/C++ code in a terminal using multiple threads, or generates project files for Microsoft Visual Studio, Xcode or MakeFiles.
- CMake generates files for various build tools, such as make, ninja, Apple's Xcode, and Microsoft Visual Studio.[2] CMake is also directly used by some IDE as Qt Creator[3], KDevelop and GNOME Builder[4].
- GNU Build System (aka autotools), a collection of tools for portable builds. These in particular include Autoconf and Automake, cross-platform tools that together generate appropriate localized makefiles.
- GYP (Generate Your Projects) - Created for Chromium; it is another tool that generates files for the native build environment
- Meson, a build system optimized for performance and usability is based on ninja on Linux, Visual Studio on Windows and Xcode on macOS. Meson is also directly used by GNOME Builder.[4]
- OpenMake Software Meister
- Premake, a Lua-based tool for making makefiles, Visual Studio files, Xcode projects, and more
Continuous integration[edit]
- AnthillPro, build automation with pipeline support for deployment automation and testing. Cross-platform, cross-language
- Apache Continuum - discontinued
- Bamboo, continuous-integration software
- Bitbucket Pipelines and Deployments, continuous integration for Bitbucket hosted repositories. Cross-platform.
- Buildbot, a Python-based software development continuous-integration tool which automates the compile/test cycle
- BuildIT, a free graphical build or task tool for Windows with an emphasis on simplicity and ease of use
- CABIE Continuous Automated Build and Integration Environment, open source, written in Perl
- CruiseControl, for Java and .NET
- Go continuous delivery, open source, cross-platform
- GitLab, continuous integration and git server
- Hudson, an extensible continuous-integration engine
- Jenkins, an extensible continuous-integration engine, forked from Hudson
- Team Foundation Server, an extensible continuous-integration engine from Microsoft
- Travis CI, a hosted continuous-integration service
- Visual Studio Team Services, provides Azure-hosted build capabilities
Configuration management[edit]
- Ansible (Python-based)
- Chef (Ruby-based)
- OpenMake Software Release Engineer
- Puppet (Ruby-based)
- Salt (Python-based)
- Rex (Perl-based)
Meta-build[edit]
A meta-build tool is capable of building many different projects using a subset of existing buildtools. Since these usually provide a list of packages to build, they are also often called package managers.
Test Automation Software Open Source
- Pkgsrc, package manager of NetBSD and other operating systems.
- Portage, package manager of the Gentoo Linux distribution
- Nix, functional package manager for Linux and macOS focusing on reproducible builds, used for the NixOS Linux distribution.
- Guix, functional package manager based on Nix, used for the GuixSD Linux distribution.
- Collective Knowledge, cross-platform package manager to rebuild software environment for research workflows
- Homebrew, package manager for macOS
Others[edit]
- checkinstall, checkinstall is a program that monitors an installation procedure, and creates a standard package for your distribution.
- Open Build Service, a hosted service to help build packages for various Linux distributions
Test Automation Software Comparison
Licensing overview[edit]
e | Description language | License |
---|---|---|
A-A-P | recipe | GNU GPL |
Ant | XML | Apache License 2.0 |
AnthillPro | Wraps Make, Ant, Maven, MsBuild, Nant, etc. for controlled build, deploy, test processes. | Discontinued |
Bamboo | continuous integration | Trialware |
Bazel | BUILD/Skylark, a Python-like DSL | Apache License 2.0 |
BuildAMation | C# for build scripts, XML for high level dependencies | New BSD License |
Buildr | Ruby | Apache License 2.0 |
Boot | Clojure | Eclipse Public License |
Capistrano | XML | MIT License |
CMake | uses CMakeLists.txt file | New BSD License |
Cake | C#, .NET, .NET core. Uses C# written cake file | MIT License |
Collective Knowledge Framework | Python scripts with JSON API and JSON meta-description | New BSD License |
Continuum | ? | Apache License 2.0 |
CruiseControl | XML | BSD-style license |
FinalBuilder | graphical IDE with support for Ant/NAnt, MSBuild, JScript, VBScript, IronPython, PowerShell | Trialware |
Gradle | Groovy-based DSL | Apache License 2.0 |
Jenkins | continuous integration | MIT License |
Homebrew | Ruby | Simplified BSD License |
Leiningen | Clojure | Eclipse Public License |
make | uses Makefile | Same as the bundling OS |
Maven | Project Object Model | Apache License 2.0 |
Meson build system | custom DSL | Apache License 2.0 |
MPW Make | ? | Freeware |
MSBuild | XML | MIT License |
MXE | uses Makefile | MIT License |
NAnt | XML | GNU GPL |
nmake | uses Makefile | Freeware |
Open Build Service | uses various package and image description formats (spec, dsc, ARCH, kiwi) | GNU GPL |
Perforce Jam | uses Jamfile | Discontinued |
Rake | Ruby | MIT License |
sbt (Simple Build Tool) | Scala-based DSL | New BSD License |
SCons | Python | MIT License |
Team Foundation Server | MSBuild, Windows Presentation Foundation, JSON - REST interfaces, Programmatic (Can generate definitions through code) | Trialware |
Tweaker (build tool) | Any (Ant, bash, batch, C, Erlang, Java, SQL, and VBScript by default, with 3rd party interface for extensions) | GNU GPLv3 |
Visual Build | XML | Trialware |
Waf | Python | New BSD License |
References[edit]
- ^mailing list discussion about porting PVCS-make scripts to GNU-make, From: Paul D. Smith, Subject: Re: PVCS to GNU, Date: 2003-02-25
- ^'cmake-generators(7) — CMake 3.11.1 Documentation'. cmake.org.
- ^'Setting Up CMake - Qt Creator Manual'. doc.qt.io.
- ^ ab'GNOME Builder Development Environment Picking Up Many Features For GNOME 3.28 - Phoronix'. www.phoronix.com.
External links[edit]
- List of build automation software on Software Wiki, an external wiki
Accelerate testing with Ranorex Studio, your all-in-one tool for test automation. Perform end-to-end testing on desktop, web and mobile platforms using real devices or emulators/simulators. Automate even challenging interfaces such as ERP and legacy applications. Run tests in parallel or distribute them on a Selenium Grid. Ranorex is easy for beginners with a codeless click-and-go interface, but powerful for automation experts with a full IDE, and integrates with leading automation tools. Learn more about Ranorex Studio
Ranorex Studio is your complete toolset to accelerate end-to-end testing for desktop, web and mobile applications. Learn more about Ranorex Studio
Accelerate testing with Ranorex Studio, your all-in-one tool for test automation. Perform end-to-end testing on desktop, web and mobile platforms using real devices or emulators/simulators. Automate even challenging interfaces such as ERP and legacy applications. Run tests in parallel or distribute them on a Selenium Grid. Ranorex is easy for beginners with a codeless click-and-go interface, but powerful for automation experts with a full IDE, and integrates with leading automation tools.