Giter Site home page Giter Site logo

trickert76 / livingdoc Goto Github PK

View Code? Open in Web Editor NEW

This project forked from livingdoc/livingdoc

0.0 1.0 0.0 1.51 MB

Write and manage your acceptance tests in any format you like incl. in Atlassian Confluence.

License: Apache License 2.0

Java 6.99% Kotlin 91.94% HTML 0.91% Gherkin 0.15%

livingdoc's Introduction

LivingDoc 2

CI - LivingDoc

The next version of LivingDoc, the acceptance testing tool with integrated support for Atlassian Confluence.

Features

LivingDoc 2 allows you to apply behaviour driven development by allowing users to create and define test cases. These test cases can be written as plain text (scenario fixtures) or as tables with input values and formulas with results (decision tables).

Concept

When developing software, it is important that all participants have a common knowledge base on which to discuss functions and define goals. Each stakeholder has a specific task with LivingDoc. They can be defined as follows.

Example of roles

  • User: Writes the Example/TestData. He therefore describes in a record or table what the input parameters are and what the result must be.

  • Tester: Is responsible for writing the test fixtures. They get their input values and the results via annotations. The test cases are then implemented to verify that the implementation is correct.

  • Developer: Implements the required functionality in the system under test.

Supported Platforms

As for now, local files, Confluence and REST Repositories are supported. For more information, on how to use the different repositories see Repository documentation.

You should also take a look at the Quality Goals defined for LivingDoc 2.

Getting started

There is several documentation available:

If you want to start working with LivingDoc 2 you will need to clone this repository or add dependencies to your project via Maven or Gradle. You can use the following fragment from our demo project to add the necessary dependencies.

build.gradle.kts
dependencies {
        ...
	testRuntime("org.livingdoc:livingdoc-junit-engine:2.0-SNAPSHOT")
	testRuntime("org.livingdoc:livingdoc-repository-file:2.0-SNAPSHOT")
	testRuntime("org.livingdoc:livingdoc-repository-rest:2.0-SNAPSHOT")

	testImplementation("org.livingdoc:livingdoc-api:2.0-SNAPSHOT")
        ...
}

Because the LivingDoc 2 Engine is an extension of the JUnit 5 Engine, you will need to add JUnit 5 to your project as well.

How to install

Depending on your environment you can use the gradle wrapper gradlew and gradlew.bat or install gradle globally on your machine. For convenience we will use gradle in the rest of the documentation as command name. So for example gradle build means:

  • Windows wrapper: gradlew.bat build

  • Linux wrapper: ./gradlew build

  • Linux without wrapper: gradle build

If you want to use your own build of livingdoc in other projects on your machine, you can publish the artifacts to your local maven repository by running gradle publishToMavenLocal. After this step the livingdoc Test Framework can be used in other projects by importing them with the group id org.livingdoc and the artifact id matching the project name.

If you are interested in a simple example, we refer to our QuickStart.adoc guide.

How to write tests

A good point to learn how to write the tests behind is documented at the Fixture Description. There, you’ll find a detailed description on how Decision Tables and Scenario Fixtures work.

Contributing

LivingDoc 2 is developed using Kotlin and Gradle.

How to import/open with IntelliJ

  1. Cloning this repository

  2. File → Open

  3. Search for your cloned repository

  4. Select the file build.gradle.kts → Press Ok

Structure

When your IDE is finished and the project is loaded, you will see the components LivingDoc 2 consists of. The engine is the heart of the project. It contains the logic of how the repository contents are handled and used. Each of the repository components defines its own approach to receiving data. For example, via local files or REST. There is also a test project. It contains a first starting point if you want to see some executable fixtures.

Architectural Decision Records can be found at the documentation of ADR.

You can find the description of some keywords at the Glossary.

External example project

We did set up an external project using LivingDoc 2. Head over to the Demo Project to see LivingDoc 2 in action!

License

LivingDoc 2 is licensed under the Apache License 2.0.

See LICENSE for the full license.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.