Giter Club home page Giter Club logo

supersimple.miniwebserver's Introduction

SuperSimple.MockWebServer

How to use

Comming soon. For now just have a look in the acceptance test project and in the console host project.

Purpose of this project.

The purpose of this project is to allow for the easy setup of mock web servers for use in acceptance tests. Obviously this means that this has to be a fully funcitoning web server, but the focus of development will be to provide features for use in testing scenarios.

General info.

This project uses SemVer.

It will be provided as a Nuget as soon as I setup AppVeyor to do so. Nuget packages will be created for all versions that pass the acceptance tests.

A roadmap will be shared to show the features that will get into version 1.

Reason for development

I dislike the huge number of projects that exist just because devs did not like what was there before. There are certainly cases where what existed before was less than ideal, so the undertaking of a similar project does have some merit, but more ofter than not, I see situations where projects get started just because the developers did not put the effort into learning the tools available for them.

The reasons for starting development on this project is to provide an easy, customizable and embeddable web server for acceptance tests while at the same time having the least nuber of dependencies. Running web api inside acceptance test is feasible, but too heavyweight to be fit for purpose. One could self-host an OWIN server into the acceptance test project (which is the approach I am using for some time), but that is missing some boilerplate code to make it easy out-of-the-box.

Priorites

Due to the above reasons, the priorities for this project are:

  1. Easy to use - The web server should provide functionality out of the box to allow for really easy mocking of third party services.
  2. Embeddable - The web server should be able to run in-proc with the acceptance tests so that they can be able to interact if need be.
  3. Be able to be used as a normal web serer - It has to provide the same functionality as a full-fledged web server to be able to mock any service possible, so the target of being able to function as a normal web server is really important. Due to this it should be also able to host a service normally with as much functionality as possible.
  4. Performant - It has to be able to serve as much requests as possible so as to have the smaller possible footprint and impact on the actual operation being tested. Additionally if this server is used for hosting a service then it has to be as performant as possible.

supersimple.miniwebserver's People

Contributors

skleanthous avatar ape-box avatar

Watchers

James Cloos avatar

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.