{"repo":"network-unit-testing-system/nuts","free":true,"listed":false,"github":"https://github.com/network-unit-testing-system/nuts","clone":"git clone https://github.com/network-unit-testing-system/nuts.git","description":"NUTS defines a desired network state and checks it against a real network using pytest and nornir.","language":"Python","stars":178,"topics":["networking","automation","python","pytest","network-programming","testing","nornir","hacktoberfest"],"license":"MIT","category":"networking-infra","readme_excerpt":"Network Unit Testing System Introduction The Network Unit Testing System or \"nuts\" in short draws on the concept of unit tests, known from the domain of programming, and applies it to the domain of networking. One major difference between unit tests in programming and network tests is the definition of what a test actually is. In programming, unit tests normally focus on testing edge cases, since the amount of non-edge cases is not definable. In the network testing domain, tests are less about edge cases, but more about testing existing network states with pre-defined test cases. Such a single test case might be \"can host A reach neighbors X, Y, Z?\" on many different devices. This is what nuts tries to achieve: Apply test cases based on your pre-defined network topology to your actual network and have the tests confirm the correct state. Installation Instructions Using pip Run pip install nuts Using UV Nuts uses uv as a dependency manager. 1. Install uv. 2. Clone this repository. 3. Run $ uv sync How It Works: Test Bundles and Test Definitions The project relies on the pytest framework to setup and execute the tests. Nuts itself is written as a custom pytest plugin. In the background, nornir executes specific network tasks for the actual tests. This can be extended to use other context as well in the future. Nuts treats the test definition and the so-called test bundle as separate entities. The test definition is modeled as a custom pytest.Class , and a predefined set of test","default_branch":null,"files":null,"tree":[],"storefront":"/r/network-unit-testing-system","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/network-unit-testing-system/nuts/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}