Best Application Development Software for Linux - Page 19

Compare the Top Application Development Software for Linux as of November 2025 - Page 19

  • 1
    LaTeX

    LaTeX

    LaTeX

    LaTeX, which is pronounced «Lah-tech» or «Lay-tech» (to rhyme with «blech» or «Bertolt Brecht»), is a document preparation system for high-quality typesetting. It is most often used for medium-to-large technical or scientific documents but it can be used for almost any form of publishing. LaTeX is not a word processor! Instead, LaTeX encourages authors not to worry too much about the appearance of their documents but to concentrate on getting the right content. To produce this in most typesetting or word-processing systems, the author would have to decide what layout to use, so would select (say) 18pt Times Roman for the title, 12pt Times Italic for the name, and so on. This has two results: authors wasting their time with designs; and a lot of badly designed documents! LaTeX is based on the idea that it is better to leave document design to document designers, and to let authors get on with writing documents.
    Starting Price: Free
  • 2
    PHPUnit

    PHPUnit

    PHPUnit

    PHPUnit requires the dom and json extensions, which are normally enabled by default. PHPUnit also requires the pcre, reflection, and spl extensions. These standard extensions are enabled by default and cannot be disabled without patching PHP’s build system and/or C sources. The code coverage report feature requires the Xdebug (2.7.0 or later) and tokenizer extensions. Generating XML reports requires the xmlwriter extension. Unit Tests are primarily written as a good practice to help developers identify and fix bugs, to refactor code and to serve as documentation for a unit of software under test. To achieve these benefits, unit tests ideally should cover all the possible paths in a program. One unit test usually covers one specific path in one function or method. However a test method is not necessarily an encapsulated, independent entity. Often there are implicit dependencies between test methods, hidden in the implementation scenario of a test.
    Starting Price: Free
  • 3
    Jasmine

    Jasmine

    Jasmine

    Jasmine attempts as best as possible to follow semantic versioning. This means we reserve major versions (1.0, 2.0, etc.) for breaking changes or other significant work. Most Jasmine releases end up being minor releases (2.3, 2.4, etc.). Major releases are very infrequent. Jasmine generally avoids dropping support for browser or Node versions except in major releases. The exceptions to this are Node versions that are past end of life, browsers that we can no longer install locally and/or test against in our CI builds, browsers that no longer receive security updates, and browsers that only run on operating systems that no longer receive security updates. We’ll make reasonable efforts to keep Jasmine working in those environments but won’t necessarily do a major release if they break.
    Starting Price: Free
  • 4
    Karma

    Karma

    Karma

    The main goal for Karma is to bring a productive testing environment to developers. The environment being one where they don't have to set up loads of configurations, but rather a place where developers can just write the code and get instant feedback from their tests. Because getting quick feedback is what makes you productive and creative. Test your code on real browsers and real devices such as phones, tablets or on a headless PhantomJS instance. Control the whole workflow from the command line or your IDE - just save a file and Karma will run all the tests. Karma also watches all the files, specified within the configuration file, and whenever any file changes, it triggers the test run by sending a signal to the testing server to inform all of the captured browsers to run the test code again. Each browser then loads the source files inside an IFrame, executes the tests and reports the results back to the server.
    Starting Price: Free
  • 5
    JMockit

    JMockit

    JMockit

    The toolkit is provided as a set of artifacts deployed to the Maven Central repository. It requires Java 7 or newer for test execution; tests must use JUnit or TestNG. For instructions on how to add the library to a Java project, see Running tests with JMockit. In this tutorial we examine the APIs available in the library, with the help of example tests (using Java 8). The central API - a single annotation - provides support for the automatic instantiation and initialization of the objects to be tested. Then we have the mocking API (also known as the "Expectations" API), intended for tests which use mocked dependencies. Finally, there is a small faking API (aka the "Mockups" API), which can be used for the creation and application of fake implementations that avoid the full cost of external components.
    Starting Price: Free
  • 6
    unittest

    unittest

    Python

    The unittest unit testing framework was originally inspired by JUnit and has a similar flavor as major unit testing frameworks in other languages. It supports test automation, sharing of setup and shutdown code for tests, aggregation of tests into collections, and independence of the tests from the reporting framework. A test fixture represents the preparation needed to perform one or more tests, and any associated cleanup actions. This may involve, for example, creating temporary or proxy databases, directories, or starting a server process. A test suite is a collection of test cases, test suites, or both. It is used to aggregate tests that should be executed together. A test runner is a component which orchestrates the execution of tests and provides the outcome to the user. The runner may use a graphical interface, a textual interface, or return a special value to indicate the results of executing the tests.
    Starting Price: Free
  • 7
    xUnit.net

    xUnit.net

    xUnit.net

    xUnit.net is a free, open source, community-focused unit testing tool for the .NET Framework. Written by the original inventor of NUnit v2, xUnit.net is the latest technology for unit testing C#, F#, VB.NET and other .NET languages. xUnit.net works with ReSharper, CodeRush, TestDriven.NET and Xamarin. It is part of the .NET Foundation, and operates under their code of conduct.
    Starting Price: Free
  • 8
    Puppeteer

    Puppeteer

    Puppeteer

    Most things that you can do manually in the browser can be done using Puppeteer! Puppeteer-core is intended to be a lightweight version of Puppeteer for launching an existing browser installation or for connecting to a remote one. Be sure that the version of puppeteer-core you install is compatible with the browser you intend to connect to. Puppeteer will be familiar to people using other browser testing frameworks. You create an instance of Browser, open pages, and then manipulate them with Puppeteer's API. By default, Puppeteer downloads and uses a specific version of Chromium so its API is guaranteed to work out of the box. To use Puppeteer with a different version of Chrome or Chromium, pass in the executable's path when creating a Browser instance.
    Starting Price: Free
  • 9
    Playwright

    Playwright

    Playwright

    Playwright supports all modern rendering engines including Chromium, WebKit, and Firefox. Test on Windows, Linux, and macOS, locally or on CI, headless or headed. Playwright waits for elements to be actionable prior to performing actions. It also has a rich set of introspection events. The combination of the two eliminates the need for artificial timeouts - the primary cause of flaky tests. Playwright assertions are created specifically for the dynamic web. Checks are automatically retried until the necessary conditions are met. Configure test retry strategy, capture execution trace, videos, screenshots to eliminate flakes. Browsers run web content belonging to different origins in different processes. Playwright is aligned with the modern browsers architecture and runs tests out-of-process. This makes Playwright free of the typical in-process test runner limitations.
    Starting Price: Free
  • 10
    Nightwatch.js

    Nightwatch.js

    Nightwatch.js

    Nightwatch.js is an integrated, easy to use End-to-End testing solution for web applications and websites, written in Node.js. It uses the W3C WebDriver API to drive browsers and perform commands and assertions on DOM elements. Simple but powerful syntax which enables you to write tests very quickly, using Javascript (Node.js) and CSS or Xpath selectors. Typescript is supported as well. Built-in command-line test runner which runs the tests either sequentially or in parallel, with retries and implicit waits. Also supports grouping of test suites and tags. Manages automatically Selenium or WebDriver services (ChromeDriver, GeckoDriver, Edge, Safari) in a separate child process. Fluent and easy to work with Page Object Model support to better organise elements and sections, with support for both CSS or Xpath selectors.
    Starting Price: Free
  • 11
    Marionette

    Marionette

    Marionette

    Organize your app in terms of small Views. Marionette makes it easy to compose rich layouts out of small components. We've added tons of features from templateHelpers, to a declarative UI hash, that will keep you from ever wanting to go back. Share complex UI interactions across views. Behaviors are like mixins, without all of the pain associated with property collision. Decoupled communication between your application components with a powerful messaging system. Write classes with the same API as your views. Marionette Objects support features like extend, events, initialize, and more. Marionette community is home to the most welcoming and vibrant discussions in the Backbone ecosystem. Stop spending more time thinking about your framework than your app. Marionette will never get in the way of you and your code.
    Starting Price: Free
  • 12
    Mockito

    Mockito

    Mockito

    Mockito is a mocking framework that tastes really good. It lets you write beautiful tests with a clean & simple API. Mockito doesn’t give you hangover because the tests are very readable and they produce clean verification errors. Read more about features & motivations. Top 10 Java library across all libraries, not only the testing tools. In late 2013 there was an analysis made of 30.000 GitHub projects. Although Mockito reached number 9 in the main report, mockito-core and mockito-all are the same tool and therefore the factual position of Mockito is number 4, surpassing famous tools like Guava or Spring. Treat this study as an indicator of a big impact that Mockito makes every day on unit tests written in Java.
    Starting Price: Free
  • 13
    PowerMock

    PowerMock

    PowerMock

    Writing unit tests can be hard and sometimes good design has to be sacrificed for the sole purpose of testability. Often testability corresponds to good design, but this is not always the case. For example final classes and methods cannot be used, private methods sometimes need to be protected or unnecessarily moved to a collaborator, static methods should be avoided completely and so on simply because of the limitations of existing frameworks. PowerMock is a framework that extends other mock libraries such as EasyMock with more powerful capabilities. PowerMock uses a custom classloader and bytecode manipulation to enable mocking of static methods, constructors, final classes and methods, private methods, removal of static initializers and more. By using a custom classloader no changes need to be done to the IDE or continuous integration servers which simplifies adoption.
    Starting Price: Free
  • 14
    MockK

    MockK

    MockK

    Mocking is a technique to make testing code readable and maintainable. In three consequent articles, I would like to show the basics, features, and quirks of the MockK library. It is a new open-source library (github repository) focused on making mocking in Kotlin great. Injection first tries to match properties by name, then by class or superclass. Check the lookupType parameter for customization. Properties are injected even if private is applied. Constructors for injection are selected from the biggest number of arguments to lowest.
    Starting Price: Free
  • 15
    OpenTest

    OpenTest

    OpenTest

    OpenTest is a free and open source functional test automation framework for web applications, mobile apps and APIs, built for scalability and extensibility, with a focus on enabling the mainstream test automation practices. OpenTest is a feature-reach tool that requires little to no coding skills and can handle virtually any type of functional test automation project. Keywords are high-level building blocks which hide the complexity of the underlying technology and let you build concise, readable and maintainable tests. No coding skills required.Run multiple test sessions in parallel, limited only by the available hardware resources. When you've maxed out your local machine(s), spin up more test actors in the cloud(s). JavaScript code can be embedded organically anywhere within your keyword-driven test to cover complex test scenarios. Run a test multiple times, over a set of data records maintained in a separate data file.
    Starting Price: Free
  • 16
    Robot Framework

    Robot Framework

    Robot Framework

    Robot Framework is a generic open-source automation framework. It can be used for test automation and robotic process automation (RPA). Robot Framework is supported by Robot Framework Foundation. Many industry-leading companies use the tool in their software development. Robot Framework is open and extensible. Robot Framework can be integrated with virtually any other tool to create powerful and flexible automation solutions. Robot Framework is free to use without licensing costs. Robot Framework has an easy syntax, utilizing human-readable keywords. Its capabilities can be extended by libraries implemented with Python, Java or many other programming languages. Robot Framework has a rich ecosystem around it, consisting of libraries and tools that are developed as separate projects.
    Starting Price: Free
  • 17
    Karate

    Karate

    Karate

    Karate is the only open-source tool to combine API test automation, mocks, performance-testing and even UI automation into a single, unified framework. The BDD syntax popularized by Cucumber is language-neutral and easy for even non-programmers. Assertions and HTML reports are built-in, and you can run tests in parallel for speed. There’s also a cross-platform stand-alone executable for teams not comfortable with Java. You don’t have to compile code. Just write tests in a simple, readable syntax - carefully designed for HTTP, JSON, GraphQL and XML. And you can mix API and UI test automation within the same test script. It is worth pointing out that JSON is a ‘first-class citizen’ of the syntax such that you can express payload and expected data without having to use double-quotes and without having to enclose JSON field names in quotes. There is no need to ‘escape’ characters like you would have had to in Java or other programming languages.
    Starting Price: Free
  • 18
    EarlGrey

    EarlGrey

    EarlGrey

    With the EarlGrey framework, you have access to enhanced synchronization features. EarlGrey automatically synchronizes with the UI, network requests, and various queues; but still allows you to manually implement customized timings, if needed. EarlGrey’s synchronization features help to ensure that the UI is in a steady state before actions are performed. This greatly increases test stability and makes tests highly repeatable. EarlGrey works in conjunction with the XCTest framework and integrates with Xcode’s Test Navigator so you can run tests directly from Xcode or the command line (using xcodebuild). The EarlGrey documentation for users is located in the EarlGrey/docs folder. To get started, review the EarlGrey features, check for backward compatibility, and then install/run EarlGrey with your test target. After everything is configured, take a look at the EarlGrey API and start writing your own tests.
    Starting Price: Free
  • 19
    Serenity BDD

    Serenity BDD

    Serenity BDD

    Serenity BDD helps you write cleaner and more maintainable automated acceptance and regression tests faster. Serenity also uses the test results to produce illustrated, narrative reports that document and describe what your application does and how it works. Serenity tells you not only what tests have been executed, but more importantly, what requirements have been tested. One key advantage of using Serenity BDD is that you do not have to invest time in building and maintaining your own automation framework. The aim of Serenity is to make it easy to quickly write well-structured, maintainable automated acceptance criteria, using your favourite BDD or conventional testing library. You can work with Behaviour-Driven-Development tools like Cucumber or JBehave, or simply use JUnit. You can integrate with requirements stored in an external source (such as JIRA or any other test cases management tool), or just use a simple directory-based approach to organise your requirements.
    Starting Price: Free
  • 20
    Galen Framework

    Galen Framework

    Galen Framework

    Layout testing seemed always a complex task. Galen Framework offers a simple solution: test location of objects relatively to each other on page. Using a special syntax and comprehensive rules you can describe any layout you can imagine. Galen Framework runs well in Selenium Grid. You can set up your tests to run in a cloud like LambdaTest, or Sauce Labs, or BrowserStack so that you can even test your responsive websites on different mobile devices. Galen can run multiple tests in parallel which is also a nice time saver. Galen Framework is designed with responsiveness in mind. It is easy to set up a test for different browser sizes. Galen just opens a browser, resizes it to a defined size and then tests the page according to specifications. Using Galen Specs Language you are able to describe any complex layout including different screen sizes or browsers. It's not only easy to write, it is also easy to read it if you are unfamiliar with the language.
    Starting Price: Free
  • 21
    behave

    behave

    behave

    Behavior-driven development (or BDD) is an agile software development technique that encourages collaboration between developers, QA and non-technical or business participants in a software project. We have a page further describing this philosophy. Behavior-driven development (or BDD) is an agile software development technique that encourages collaboration between developers, QA and non-technical or business participants in a software project. It was originally named in 2003 by Dan North as a response to test-driven development (TDD), including acceptance test or customer test driven development practices as found in extreme programming. BDD is a second-generation, outside–in, pull-based, multiple-stakeholder, multiple-scale, high-automation, agile methodology. It describes a cycle of interactions with well-defined outputs, resulting in the delivery of working, tested software that matters.
    Starting Price: Free
  • 22
    Selenide

    Selenide

    Selenide

    You don't need to think how to shut down browser, handle timeouts and StaleElement Exceptions or search for relevant log lines, debugging your tests. We are proud to claim that Selenide is so simple that you don't need to read tons of documentation. Selenium WebDriver is a great tool, but it’s not a tool for testing. It’s a tool for browser manipulation. There are several testing libraries around Selenium WebDriver. But it seems that they do not resolve the main problems of UI tests. Namely, instability of tests caused by dynamic content, JavaScript, Ajax, timeouts etc. Selenide was created to resolve these problems. First of all, Selenide makes your tests stable by resolving (almost) all Ajax/timing issues. We are proud to claim that Selenide is so simple that you don't need to read tons of documentation. The whole work with Selenide consists of three simple things!
    Starting Price: Free
  • 23
    Spock Framework
    Spock is a testing and specification framework for Java and Groovy applications. What makes it stand out from the crowd is its beautiful and highly expressive specification language. Thanks to its JUnit runner, Spock is compatible with most IDEs, build tools, and continuous integration servers. Spock is inspired from JUnit, RSpec, jMock, Mockito, Groovy, Scala, Vulcans, and other fascinating life forms. Spock Web Console is a website that allows you to instantly view, edit, run, and even publish Spock specifications. It is the perfect place to toy around with Spock without making any commitments.
    Starting Price: Free
  • 24
    StepZen

    StepZen

    StepZen

    StepZen provides a unique low code approach to creating GraphQL APIs for any data source—REST, SQL, NoSQL, SOAP/XML, and GraphQL. With one command, you can specify your backend; StepZen introspects it and generates the schema for you. Then, with a few lines of code and powerful directives (@rest, @dbquery), you can quickly customize a schema—or write one from scratch. Another directive (@materializer) lets you stitch graphs together, seamlessly scaling GraphQL across teams and domains. In addition, by using @materializer, you avoid managing concerns across subgraphs, writing stubs of types, and other complexities. Whether you deploy a single graph or a federated graph-of-graphs, with one command, you deploy it to StepZen's highly available cloud. Automatic parallelized execution, security and control of your APIs and data, and performance and reliability optimizations are built-in. So we keep your GraphQL infrastructure secure and stable so you can focus on your business.
    Starting Price: Free
  • 25
    Hope UI

    Hope UI

    Iqonic Design

    As the name suggests, Hope UI is the revolutionary admin dashboard built with the developer's aspirations and needs in the first place. Hope UI Laravel Admin Dashboard Template and UI component set is designed with a modular component structure to help design and launch web applications in the fastest way possible. Being able to develop lightweight web applications and admin panels, Hope UI Admin Template comes with a Live Customizer to cut down on development time and coding hours. The Hope UI Bootstrap Admin Dashboard brings the future of admin UI to power your present and future development. Hope UI is available in 8 different technologies which are Bootstrap, Vue JS, React JS, Laravel, CodeIgniter, Figma, XD and Sketch UI Kit and more versions like Tailwind, Angular, React Native, etc are in the roadmap.
    Starting Price: $99 per year
  • 26
    gopaddle

    gopaddle

    gopaddle

    Unleash the power of the no-code platform for modern applications. Build, Provision, Run and Scale Cloud-Native Applications by leveraging your team's current capabilities. Unlock the potential of your applications, capture new revenue opportunities and exceed customer expectations by modernizing your legacy and greenfield applications rapidly. Be the first to market and lead the change. Leverage Out-of-the-box DevOps capabilities in the platform to simplify and automate your software delivery and maintenance. Spice up your 'cloud first' strategy with multi and hybrid cloud enablement. Avoid vendor lock-in and give the flexibility of choice to your teams to bring their own cloud and infrastructure. Eliminate manual errors due to human factors and save time to modernize applications. Debug and resolve issues faster than before using the built-in developer tools.
    Starting Price: $45 per month
  • 27
    Kong Gateway
    The world’s most popular API gateway. Built for hybrid and multi-cloud, optimized for microservices and distributed architectures. Get started today – download Kong Gateway for free. Kong Gateway supports hybrid or multi-cloud infrastructure, and includes a Kubernetes-native ingress solution and support for declarative configuration management. Kong Gateway is part of the Konnect managed connectivity platform. Konnect delivers connectivity functionality such as API Portals and AI-based anomaly detection, while providing the flexibility of running high performance connectivity runtimes. Use one of the many plugins developed by Kong or our community to add the functionality you need. Build your own plugin with our built in, well-documented plugin development kit. Configure Gateway natively using an API, web UI, or with declarative configuration to manage updates via your CI/CD pipelines.
    Starting Price: Free
  • 28
    Japedo

    Japedo

    Logitags

    Japedo analyses source code and database scheme and generates a complete documentation of the persistence layer of a Java application. The documentation as a dynamic HTML page includes tables, diagrams, mappings, version comparisons, it lists bugs, flaws and inconsistencies of the implementation and provides a sophisticated search functionality.
    Starting Price: €120/year
  • 29
    Sails

    Sails

    Sails

    Build practical, production-ready Node.js apps in a matter of weeks, not months. Sails is the most popular MVC framework for Node.js, designed to emulate the familiar MVC pattern of frameworks like Ruby on Rails, but with support for the requirements of modern apps, data-driven APIs with scalable, service-oriented architecture. Sails makes it easy to build custom, enterprise-grade Node.js apps. Building on top of Sails means your app is written entirely in JavaScript, the language you and your team are already using in the browser. Sails bundles a powerful ORM, Waterline, which provides a simple data access layer that just works, no matter what database you're using. Sails comes with blueprints that help jumpstart your app's backend without writing any code. Since Sails translates incoming socket messages for you, they're automatically compatible with every route in your Sails app. Sails offers commercial support to accelerate development and ensure best practices in your code.
    Starting Price: Free
  • 30
    Elixir

    Elixir

    Elixir

    Elixir is a dynamic, functional language for building scalable and maintainable applications. Elixir leverages the Erlang VM, known for running low-latency, distributed, and fault-tolerant systems. Elixir is successfully used in web development, embedded software, data ingestion, and multimedia processing, across a wide range of industries. Check our getting started guide and our learning page to begin your journey with Elixir. All Elixir code runs inside lightweight threads of execution (called processes) that are isolated and exchange information via messages. Due to their lightweight nature, it is not uncommon to have hundreds of thousands of processes running concurrently in the same machine. Isolation allows processes to be garbage collected independently, reducing system-wide pauses, and using all machine resources as efficiently as possible (vertical scaling). Processes are also able to communicate with other processes running on different machines in the same network.
    Starting Price: Free