NBi.Framework 2.0.0-beta.148

This is a prerelease version of NBi.Framework.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package NBi.Framework --version 2.0.0-beta.148
                    
NuGet\Install-Package NBi.Framework -Version 2.0.0-beta.148
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="NBi.Framework" Version="2.0.0-beta.148" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="NBi.Framework" Version="2.0.0-beta.148" />
                    
Directory.Packages.props
<PackageReference Include="NBi.Framework" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add NBi.Framework --version 2.0.0-beta.148
                    
#r "nuget: NBi.Framework, 2.0.0-beta.148"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=NBi.Framework&version=2.0.0-beta.148&prerelease
                    
Install NBi.Framework as a Cake Addin
#tool nuget:?package=NBi.Framework&version=2.0.0-beta.148&prerelease
                    
Install NBi.Framework as a Cake Tool

Logo

NBi

NBi is a testing framework (add-on to NUnit) for Business Intelligence. It supports most of the relational databases (SQL server, MySQL, postgreSQL ...) and OLAP platforms (Analysis Services, Mondrian ...) but also ETL and reporting components (Microsoft technologies).

The main goal of this framework is to let users create tests with a declarative approach based on an Xml syntax. By the means of NBi, you don't need to develop C# code to specify your tests! Either, you don't need Visual Studio to compile your test suite. Just create an Xml file and let the framework interpret it and play your tests. The framework is designed as an add-on of NUnit but with the possibility to port it easily to other testing frameworks.

Social media: website twitter badge

Releases: nuget GitHub Release Date licence badge FOSSA Status

Latest RC and beta: Pre-release GitHub (Pre-)Release Date nuget

Dev. activity: GitHub last commit Still maintained GitHub commit activity

Continuous integration builds: Build status Tests

Status: stars badge Bugs badge Features badge Top language

Releases

Binaries for the different releases are hosted on www.nbi.io or GitHub

Documentation

The documentation is available on-line and is hosted on www.nbi.io

Licenses

NBi is available on the terms of Apache 2.0. NBi is also using several OSS projects as libraries.

Compatibility of licenses in checked by FOSSA app:

FOSSA Status

Bugs, issues and requests for features

The list of bugs and feature's requests is hosted on GitHub

Continuous Integration and Testing

A continuous integration service is available on AppVeyor and another on Azure DevOps

NBi has around 2750 automated tests, asserting most of the features supported by NBi during the build processes. These tests are organized in three folders:

  • Acceptance: The tests are effectively written in nbits file and played end-to-end by the framework itself. They don't use any fake, mock or stub and are connected to real databases and cubes and perform queries on them.
  • Integration: These tests are used to assert interactions with external resources such as databases or cubes. They make usage of stubs to define parameters impacting the code to use.
  • Unit: These tests are never contacting an external resource and have a maximal scope equivalent to the code of a single class. Usage of stubs, fakes and mocks is welcome.

In order to be able to build the software on different machines, the database and cube used during tests must always be Adventure Works 2008R2. In order to facilitate the integration, NBi is connected by default to the online SQL database hosted on Azure (Unfortunately no equivalent for SSAS). If you want to override the connection settings to execut the tests on your own environment, create a file named ConnectionString.user.config in the folder NBi.Testing and copy the content from the file ConnectionString.config into it, before adjusting for your environment.

Note that all the tests are not executed on the continuous integration services, due to limitations in the availability of some components.

  • Unit tests are always executed
  • Integration tests are executed based on the availability of the underlying components:
    • Database Engine: Yes. Due to the usage of an Azure database to run these tests, these tests are enabled on the CI platforms. About ODBC drivers, the ODBC driver for SQL Server (13.1) is used on appVeyor and the SQL Server (10.0) is used on Azure DevOps
    • OLAP Engine: No
    • ETL Engine (SSIS): No
    • Windows Service: No (but planned to integrate them)
    • Local Database: No (but planned to integrate them)
    • Report Server: No (but planned to integrate them)
  • Acceptance tests are partially run. The test-suites covering the acceptance tests are executed but will return an ignore result when at least one of the test is not runnable due to service not running (most of the time, the reason for an ignore is the unavailability of Analysis Services).

Three artefacts are packaged and published by this CI:

  • Framework.zip contains the dll needed to run tests written with NBi
  • UI.zip contains the exe and dlls needed to run Genbi
  • Nuget packages

The nuget packages built on appVeyor are pushed to nuget for beta, release candidates and release branches.

Code and contributions

NBi is using Git as DCVS and the code is hosted on Github. Organization of the Git repository is based on Git-flow.

If you want to develop a new feature, you're encouraged to read the contribution guidelines.

NBi is mostly developed in C# with a bit of SQL and XML.

Tracking

This OSS project is tracked by Ohloh

Project Stats

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on NBi.Framework:

Package Downloads
NBi.VisualStudio

This package retrieves NUnit runners and NBi framework from Nuget before creating an empty test-suite, a config file and NUnit-project file. It also reconfigure the project to start NUnit GUI and the test-suite when pressing F5 (debug).

NBi.Gremlin

This package contains the Tinkerpop Gremlin extension for the testing framework NBi (check at http://www.nbi.io)

NBi.Data3Sixty

This package contains the Data3Sixty extension for the testing framework NBi (check at http://www.nbi.io)

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.0.0-beta.155 122 3/12/2025
2.0.0-beta.153 117 3/12/2025
2.0.0-beta.151 126 3/11/2025
2.0.0-beta.149 123 3/10/2025
2.0.0-beta.148 123 3/9/2025
2.0.0-beta.146 121 3/9/2025
2.0.0-beta.145 162 3/5/2025
2.0.0-beta.143 61 2/26/2025
2.0.0-beta.142 62 2/24/2025
2.0.0-beta.141 45 2/23/2025
2.0.0-beta.140 60 2/23/2025
2.0.0-beta.135 56 1/28/2025
1.25.0-beta0005 89 1/27/2025
1.25.0-beta0001 163 8/10/2023
1.24.0 289 8/10/2023
1.24.0-beta0047 136 8/10/2023
1.24.0-beta0046 136 8/10/2023
1.24.0-beta0044 131 8/10/2023
1.24.0-beta0040 131 8/10/2023
1.24.0-beta0036 107 8/10/2023
1.24.0-beta0023 112 8/9/2023
1.24.0-beta0020 179 1/3/2023
1.24.0-beta0019 162 1/3/2023
1.24.0-beta0018 153 1/3/2023
1.24.0-beta0015 178 1/3/2023
1.24.0-beta0009 162 1/1/2023
1.24.0-beta0007 167 1/1/2023
1.24.0-beta0006 150 1/1/2023
1.24.0-beta0002 197 6/12/2022
1.24.0-beta0001 221 12/18/2021
1.23.0 573 12/16/2021
1.23.0-beta0195 237 11/23/2021
1.23.0-beta0193 216 11/22/2021
1.23.0-beta0192 1,188 11/20/2021
1.23.0-beta0185 283 9/17/2021
1.23.0-beta0182 265 9/16/2021
1.23.0-beta0181 314 9/11/2021
1.23.0-beta0180 305 9/11/2021
1.23.0-beta0178 296 9/11/2021
1.23.0-beta0177 298 9/11/2021
1.23.0-beta0172 315 9/11/2021
1.23.0-beta0167 292 2/27/2021
1.23.0-beta0165 318 2/27/2021
1.23.0-beta0164 311 1/23/2021
1.23.0-beta0162 299 1/23/2021
1.23.0-beta0161 302 1/23/2021
1.23.0-beta0081 284 1/14/2021
1.23.0-beta0076 287 1/13/2021
1.23.0-beta0072 344 1/6/2021
1.23.0-beta0068 295 1/6/2021
1.23.0-beta0065 325 1/2/2021
1.23.0-beta0057 314 1/2/2021
1.23.0-beta0056 381 12/13/2020
1.23.0-beta0053 410 12/13/2020
1.23.0-beta0048 415 11/7/2020
1.23.0-beta0026 483 6/20/2020
1.23.0-beta0021 519 6/20/2020
1.23.0-beta0018 419 3/17/2020
1.23.0-beta0008 446 2/7/2020
1.23.0-beta0004 411 2/6/2020
1.23.0-beta0001 498 2/4/2020
1.22.0 8,954 2/4/2020
1.22.0-beta0083 422 2/4/2020
1.22.0-beta0079 516 2/3/2020
1.22.0-beta0076 506 1/14/2020
1.22.0-beta0069 467 1/7/2020
1.22.0-beta0067 483 1/7/2020
1.22.0-beta0061 556 1/6/2020
1.22.0-beta0055 610 1/3/2020
1.22.0-beta0054 480 1/3/2020
1.22.0-beta0053 483 1/3/2020
1.22.0-beta0049 452 12/5/2019
1.22.0-beta0048 420 12/1/2019
1.22.0-beta0047 447 12/1/2019
1.22.0-beta0044 490 11/21/2019
1.22.0-beta0035 449 11/20/2019
1.22.0-beta0034 424 11/17/2019
1.22.0-beta0033 456 11/14/2019
1.22.0-beta0029 480 11/11/2019
1.22.0-beta0027 445 11/11/2019
1.22.0-beta0025 491 11/9/2019
1.22.0-beta0021 457 11/9/2019
1.22.0-beta0019 499 11/9/2019
1.22.0-beta0017 464 11/5/2019
1.22.0-beta0016 545 11/4/2019
1.22.0-beta0015 453 11/3/2019
1.22.0-beta0013 471 11/1/2019
1.22.0-beta0012 452 10/27/2019
1.22.0-beta0009 439 10/26/2019
1.22.0-beta0004 464 10/22/2019
1.22.0-beta0003 453 10/19/2019
1.22.0-beta0002 444 10/19/2019
1.22.0-beta0001 461 10/13/2019
1.21.0 17,874 11/1/2019
1.21.0-rc0002 474 10/9/2019
1.21.0-rc0001 476 9/14/2019
1.21.0-beta0345 614 9/14/2019
1.21.0-beta0344 487 9/14/2019
1.21.0-beta0342 455 9/12/2019
1.21.0-beta0341 461 9/10/2019
1.21.0-beta0337 454 9/10/2019
1.21.0-beta0336 450 9/8/2019
1.21.0-beta0335 477 9/7/2019
1.21.0-beta0332 449 9/7/2019
1.21.0-beta0329 458 9/7/2019
1.21.0-beta0326 481 9/2/2019
1.21.0-beta0313 481 8/30/2019
1.21.0-beta0312 472 8/30/2019
1.21.0-beta0305 471 8/30/2019
1.21.0-beta0297 457 8/28/2019
1.21.0-beta0287 447 8/26/2019
1.21.0-beta0286 478 8/24/2019
1.21.0-beta0283 470 8/23/2019
1.21.0-beta0280 438 8/23/2019
1.21.0-beta0276 467 8/21/2019
1.21.0-beta0275 473 8/21/2019
1.21.0-beta0271 474 8/18/2019
1.21.0-beta0270 470 8/18/2019
1.21.0-beta0268 505 8/10/2019
1.21.0-beta0265 465 8/8/2019
1.21.0-beta0264 483 7/20/2019
1.21.0-beta0244 483 7/2/2019
1.21.0-beta0241 488 7/1/2019
1.21.0-beta0238 444 6/25/2019
1.21.0-beta0237 433 6/23/2019
1.21.0-beta0234 452 6/23/2019
1.21.0-beta0233 466 6/23/2019
1.21.0-beta0228 527 6/6/2019
1.21.0-beta0222 504 6/3/2019
1.21.0-beta0221 443 10/8/2019
1.21.0-beta0220 508 6/1/2019
1.21.0-beta0219 505 6/1/2019
1.21.0-beta0218 502 5/31/2019
1.21.0-beta0217 524 5/30/2019
1.21.0-beta0216 432 10/8/2019
1.21.0-beta0215 432 10/8/2019
1.21.0-beta0213 459 10/8/2019
1.21.0-beta0212 432 10/7/2019
1.21.0-beta0204 437 10/6/2019
1.21.0-beta0193 476 10/3/2019
1.21.0-beta0189 437 10/2/2019
1.21.0-beta0188 445 9/27/2019
1.21.0-beta0187 445 9/26/2019
1.21.0-beta0183 436 9/25/2019
1.21.0-beta0178 475 9/18/2019
1.21.0-beta0048 505 5/30/2019
1.21.0-beta0047 498 5/30/2019
1.21.0-beta0033 465 5/14/2019
1.21.0-beta0029 527 5/6/2019
1.21.0-beta0028 483 5/5/2019
1.21.0-beta0022 511 5/4/2019
1.21.0-beta0011 498 5/3/2019
1.21.0-beta0010 506 5/3/2019
1.21.0-beta0009 491 5/3/2019
1.21.0-beta0008 495 5/3/2019
1.21.0-beta0005 506 4/27/2019
1.21.0-beta0004 503 4/18/2019
1.20.0 2,435 5/30/2019
1.20.0-rc0001 505 4/13/2019
1.20.0-beta0166 475 4/13/2019
1.20.0-beta0147 484 3/26/2019
1.20.0-beta0146 347 3/25/2019
1.20.0-beta0143 338 3/25/2019
1.20.0-beta0142 333 3/14/2019
1.20.0-beta0138 340 3/12/2019
1.20.0-beta0137 349 3/11/2019
1.20.0-beta0136 341 2/27/2019
1.20.0-beta0123 343 2/27/2019
1.20.0-beta0118 399 2/13/2019
1.20.0-beta0112 402 2/6/2019
1.20.0-beta0107 394 2/4/2019
1.20.0-beta0106 397 1/29/2019
1.20.0-beta0103 390 1/29/2019
1.20.0-beta0102 396 1/29/2019
1.20.0-beta0096 395 1/27/2019
1.20.0-beta0094 404 1/27/2019
1.20.0-beta0093 408 1/25/2019
1.20.0-beta0092 394 1/25/2019
1.20.0-beta0091 412 1/23/2019
1.20.0-beta0077 463 1/17/2019
1.20.0-beta0073 468 1/15/2019
1.20.0-beta0072 454 1/14/2019
1.20.0-beta0056 603 1/6/2019
1.20.0-beta0053 611 1/2/2019
1.20.0-beta0052 612 12/31/2018
1.20.0-beta0051 590 12/31/2018
1.20.0-beta0050 607 12/30/2018
1.20.0-beta0049 573 12/30/2018
1.20.0-beta0048 601 12/30/2018
1.20.0-beta0027 573 12/30/2018
1.20.0-beta0005 619 12/4/2018
1.19.0.1 3,098 12/30/2018
1.19.0-rc0001 640 11/13/2018
1.19.0-beta0229 655 11/13/2018
1.19.0-beta0226 650 11/13/2018
1.19.0-beta0225 591 11/10/2018
1.19.0-beta0103 650 11/1/2018
1.19.0-beta0102 678 10/31/2018
1.19.0-beta0098 662 10/31/2018
1.19.0-beta0097 644 10/31/2018
1.19.0-beta0092 644 10/31/2018
1.19.0-beta0091 608 10/31/2018
1.19.0-beta0090 593 10/25/2018
1.19.0-beta0082 621 10/25/2018
1.19.0-beta0081 640 10/23/2018
1.19.0-beta0079 619 10/23/2018
1.19.0-beta0075 667 10/9/2018
1.19.0-beta0071 656 10/2/2018
1.19.0-beta0070 1,262 9/19/2018
1.19.0-beta0069 664 9/19/2018
1.19.0-beta0068 677 9/19/2018
1.19.0-beta0062 745 9/4/2018
1.19.0-beta0061 681 9/4/2018
1.19.0-beta0056 683 8/27/2018
1.19.0-beta0048 690 8/24/2018
1.19.0-beta0047 717 8/12/2018
1.19.0-beta0045 789 7/30/2018
1.19.0-beta0044 761 7/27/2018
1.19.0-beta0043 750 7/27/2018
1.19.0-beta0042 764 7/23/2018
1.19.0-beta0040 732 7/23/2018
1.19.0-beta0037 755 6/29/2018
1.19.0-beta0032 865 6/27/2018
1.19.0-beta0030 956 5/29/2018
1.19.0-beta0022 977 5/25/2018
1.19.0-beta0012 869 5/21/2018
1.19.0-beta0010 925 5/17/2018
1.19.0-beta0009 952 5/14/2018
1.19.0-beta0005 990 4/30/2018
1.18.1 3,850 7/30/2018
1.18.0.1 1,815 4/27/2018
1.18.0 3,027 4/27/2018
1.18.0-rc0004 915 4/26/2018
1.18.0-rc0003 949 4/26/2018
1.18.0-rc0002 1,853 1/23/2018
1.18.0-rc0001 923 1/15/2018
1.18.0-beta0127 994 4/27/2018
1.18.0-beta0126 906 4/26/2018
1.18.0-beta0125 932 4/26/2018
1.18.0-beta0124 947 4/26/2018
1.18.0-beta0116 1,017 4/13/2018
1.18.0-beta0115 1,027 4/13/2018
1.18.0-beta0114 1,066 4/7/2018
1.18.0-beta0111 960 3/6/2018
1.18.0-beta0110 898 2/24/2018
1.18.0-beta0109 954 2/6/2018
1.18.0-beta0103 891 1/25/2018
1.18.0-beta0100 929 1/24/2018
1.18.0-beta0098 815 1/24/2018
1.18.0-beta0094 907 1/24/2018
1.18.0-beta0093 901 1/22/2018
1.18.0-beta0092 922 1/22/2018
1.18.0-beta0090 1,069 1/22/2018
1.18.0-beta0089 915 1/22/2018
1.18.0-beta0088 944 1/18/2018
1.18.0-beta0084 2,519 1/16/2018
1.18.0-beta0083 917 1/15/2018
1.18.0-beta0082 929 1/15/2018
1.18.0-beta0081 1,391 1/14/2018
1.18.0-beta0080 970 1/14/2018
1.18.0-beta0079 938 1/14/2018
1.18.0-beta0078 949 1/14/2018
1.18.0-beta0029 910 1/7/2018
1.18.0-beta0018 909 1/6/2018
1.18.0-beta0017 940 1/5/2018
1.18.0-beta0014 970 1/5/2018
1.18.0-beta0003 919 12/10/2017
1.17.1 2,959 12/17/2017
1.17.0 2,721 12/9/2017
1.17.0-rc0001 816 11/26/2017
1.17.0-beta0112 932 12/8/2017
1.17.0-beta0111 946 12/5/2017
1.17.0-beta0110 817 12/4/2017
1.17.0-beta0109 788 12/2/2017
1.17.0-beta0107 826 12/2/2017
1.17.0-beta0106 810 11/26/2017
1.17.0-beta0105 821 11/26/2017
1.17.0-beta0096 820 11/25/2017
1.17.0-beta0089 790 11/5/2017
1.17.0-beta0085 827 11/4/2017
1.17.0-beta0084 777 11/4/2017
1.17.0-beta0069 828 11/2/2017
1.17.0-beta0062 794 11/2/2017
1.17.0-beta0061 789 11/1/2017
1.17.0-beta0058 791 11/1/2017
1.17.0-beta0055 778 11/1/2017
1.17.0-beta0040 849 11/1/2017
1.17.0-beta0039 791 11/1/2017
1.17.0-beta0038 844 11/1/2017
1.17.0-beta0005 839 10/27/2017
1.17.0-beta0004 792 10/27/2017
1.17.0-beta0002 796 10/25/2017
1.17.0-beta0001 819 10/25/2017
1.16.0.2 1,452 10/26/2017
1.16.0-rc0001 829 10/15/2017
1.16.0-beta0099 805 10/25/2017
1.16.0-beta0096 824 10/25/2017
1.16.0-beta0089 792 10/25/2017
1.16.0-beta0086 795 10/25/2017
1.16.0-beta0085 831 10/15/2017
1.16.0-beta0081 826 10/15/2017
1.16.0-beta0076 837 10/13/2017
1.16.0-beta0074 812 10/12/2017
1.16.0-beta0067 803 10/12/2017
1.16.0-beta0064 810 10/10/2017
1.16.0-beta0059 831 10/10/2017
1.16.0-beta0055 800 10/9/2017
1.16.0-beta0049 825 10/8/2017
1.16.0-beta0048 805 10/8/2017
1.16.0-beta0044 810 10/8/2017
1.16.0-beta0040 980 9/8/2017
1.16.0-beta0035 819 9/8/2017
1.16.0-beta0032 825 9/8/2017
1.16.0-beta0026 838 9/8/2017
1.16.0-beta0022 800 9/2/2017
1.16.0-beta0021 815 9/2/2017
1.16.0-beta0020 827 9/2/2017
1.16.0-beta0018 819 9/2/2017
1.15.0.1 1,055 10/26/2017
1.14.0.7 6,186 3/18/2017