go-script-bash - Framework for writing modular, discoverable, testable Bash scripts

  •        11

A ./go script aims to abstract away many of the steps needed to develop (and sometimes deploy) a software project. It is a replacement for READMEs and other documents that may become out-of-date, and when maintained properly, should provide a cohesive and discoverable interface for common project tasks. For a five-minute overview of the framework, see Mike Bland's go-script-bash lightning talk at Surge 2016.




Related Projects

bats-core - Bash Automated Testing System

  •    Shell

Bats is a TAP-compliant testing framework for Bash. It provides a simple way to verify that the UNIX programs you write behave as expected. A Bats test file is a Bash script with special syntax for defining test cases. Under the hood, each test case is just a function with a description.

VSTS Code Coverage Runner - Get VS Code Coverage from NUnit or MbUnit


This project is an attempt to provide a wrapper around the VSTS instrumentation and code coverage tools. VSTS provides very powerful code coverage tools with Visual Studio, but as packaged, you need to be running MSTest unit tests to obtain this coverage data. There is a way ...

shunit2 - shUnit2 is a xUnit based unit test framework for Bourne based shell scripts.

  •    Shell

shUnit2 is a xUnit unit test framework for Bourne based shell scripts, and it is designed to work in a similar manner to JUnit, PyUnit, etc.. If you have ever had the desire to write a unit test for a shell script, shUnit2 can do the job. shUnit2 was originally developed to provide a consistent testing solution for log4sh, a shell based logging framework similar to log4j. During the development of that product, a repeated problem of having things work just fine under one shell (/bin/bash on Linux to be specific), and then not working under another shell (/bin/sh on Solaris) kept coming up. Although several simple tests were run, they were not adequate and did not catch some corner cases. The decision was finally made to write a proper unit test framework after multiple brown-bag releases were made. Research was done to look for an existing product that met the testing requirements, but no adequate product was found.

atoum - The modern, simple and intuitive PHP unit testing framework.

  •    PHP

To accomplish that, it massively uses capabilities provided by PHP, to give the developer a whole new way of writing unit tests. Therefore, it can be installed and integrated into an existing project extremely easily, since it is only a single PHAR archive, which is the one and only entry point for the developer. Also, thanks to its fluent interface, it allows for writing unit tests in a fashion close to natural language. It also makes it easier to implement stubbing within tests, thanks to intelligent uses of anonymous functions and closures. atoum natively, and by default, performs the execution of each unit test within a separate PHP process, to warrant isolation. Of course, it can be used seamlessly for continuous integration, and given its design, it can be made to cope with specific needs extremely easily. atoum also accomplishes all of this without affecting performance, since it has been developed to boast a reduced memory footprint while allowing for hastened test execution. It can also generate unit test execution reports in the Xunit format, which makes it compatible with continuous integration tools such as Jenkins. atoum also generates code coverage reports, in order to make it possible to supervise unit tests. Finally, even though it is developed mainly on UNIX, it can also work on Windows. If Xdebug or equivalent gets displayed, then the module is properly installed.

GoConvey - Go testing in the browser. Integrates with go test. Write behavioral tests in Go.

  •    Go

GoConvey is a yummy Go testing tool for gophers. Works with go test. Use it in the terminal or browser according to your viewing pleasure.

bash-oo-framework - Bash Infinity is a modern boilerplate / framework / standard library for bash

  •    Shell

Bash Infinity is a standard library and a boilerplate framework for writing tools using bash. It's modular and lightweight, while managing to implement some concepts from C#, Java or JavaScript into bash. The Infinity Framework is also plug & play: include it at the beginning of your existing script to import any of the individual features such as error handling, and start using other features gradually. The aim of Bash Infinity is to maximize readability of bash scripts, minimize the amount of code repeat and create a central repository for well-written, and a well-tested standard library for bash.

go-fuzz - Randomized testing for Go

  •    Go

Go-fuzz is a coverage-guided fuzzing solution for testing of Go packages. Fuzzing is mainly applicable to packages that parse complex inputs (both text and binary), and is especially useful for hardening of systems that parse inputs from potentially malicious users (e.g. anything accepted over a network).Data is a random input generated by go-fuzz, note that in most cases it is invalid. The function must return 1 if the fuzzer should increase priority of the given input during subsequent fuzzing (for example, the input is lexically correct and was parsed successfully); -1 if the input must not be added to corpus even if gives new coverage; and 0 otherwise; other values are reserved for future use.

django-jenkins - Plug and play continuous integration with django and jenkins

  •    Python

This will create reports/ directory with junit xml, Coverage and Pylint reports. If present, it is supposed to be a list/tuple of django apps for Jenkins to run. Tests, reports, and coverage are generated only for the apps from this list.

istanbul - Yet another JS code coverage tool that computes statement, line, function and branch coverage with module loader hooks to transparently add coverage when running tests

  •    Javascript

Deprecation Notice: this version of istanbul is deprecated, we will not be landing pull requests or releasing new versions. But don't worry, the Istanbul 2.0 API is now available and is being actively developed in the new istanbuljs organization. The best way to see it in action is to run node unit tests. Say you have a test script test.js that runs all tests for your node project without coverage.

airtap - Test your JavaScript in 800+ browsers.

  •    Javascript

Test your JavaScript in 800+ browsers. Airtap is an easy way to test your JavaScript in browsers, using a TAP-producing harness like tap or tape. Start testing your code locally in seconds and seamlessly move to cloud based browsers powered by Sauce Labs for better coverage.

utPLSQL - Ultimate PL/SQL Unit Testing Framework for Oracle

  •    PLSQL

utPLSQL version 3 is a complete rewrite of utPLSQL v2 from scratch. Version 2 still supports older versions of Oracle that are no longer available. The community that had developed on GitHub decided that a new internal architecture was needed, from that version 3 was born. Published releases are available for download on the utPLSQL GitHub Releases Page.

vue-webpack-typescript - A Vue, Webpack, Typescript, Bootstrap setup with hot reload, dynamic imports, unit testing, code coverage, sass, uncss and bundling/minification

  •    TypeScript

A Vue 2.5, Webpack 3.10, Typescript 2.7, Bootstrap 4.0 setup with hot reload, dynamic imports, unit testing, code coverage, sass and bundling/minification. See the changelog for updates.

zuul - multi-framework javascript browser testing

  •    Javascript

Zuul is an easy way to test your javascript in browsers. Start testing your code in seconds locally and move to cloud based browsers seamlessly for better coverage. Zuul is different than other cross browser test runners in its simplicity and ability to easily run your test suite in many browsers without having them installed locally. It lets you iterate quickly during development and provide good browser coverage before release without worrying about missing a supported browser.

cayley - An open-source graph database

  •    Go

* Written in [Go](http://golang.org)* Easy to get running (3 or 4 commands, below)* RESTful API * or a REPL if you prefer* Built-in query editor and visualizer* Multiple query languages: * JavaScript, with a [Gremlin](http://gremlindocs.com/)-inspired\* graph object. * (simplified) [MQL](https://developers.google.com/freebase/v1/mql-overview), for Freebase fans* Plays well with multiple backend stores: * [LevelDB](http://code.google.com/p/leveldb/) * [Bolt](http://github.com/boltdb/bolt) *

The JXCL Project

  •    Java

JXCL is a framework for constructing transforming class loaders for Java. It can be used for a wide range of purposes, including automated testing, in particular testing of unit test coverage.

syzkaller - syzkaller is an unsupervised, coverage-guided Linux system call fuzzer

  •    Go

syzkaller is an unsupervised coverage-guided Linux kernel fuzzer.The project mailing list is syzkaller@googlegroups.com. You can subscribe to it with a google account or by sending an email to syzkaller+subscribe@googlegroups.com.

Easy Coverage for Java

  •    Java

Dynamically generated unit tests for basic verifications.

SoapUI - Functional testing solution for APIs and web services

  •    Java

SoapUI is the Functional Testing tool for SOAP and REST testing. With its easy-to-use graphical interface, and enterprise-class features, SoapUI allows you to easily and rapidly create and execute automated functional, regression, and load tests. In a single test environment, SoapUI provides complete test coverage - from SOAP and REST-based Web services, to JMS enterprise messaging layers, databases, Rich Internet Applications, and much more.

burnside - Fast and Reliable E2E Web Testing with only Javascript

  •    Javascript

Burnside is an easy to use, modular, and extendable End to End (E2E) testing tool. Burnside leverages the flexibility of JavaScript and the power of modern Browser APIs to inject logic and scripting into your website, without the slowdown of networking for every individual command. Burnside is a modular ecosystem based on a core that runs inside of a Browser. The CLI bundles Karma and Webpack to load your tests within Chrome, but you can use Burnside's core with any Test Runner you'd like to set up.