Skip to content

jareddavison/DUnitX

This branch is 16 commits behind VSoftTechnologies/DUnitX:master.

Folders and files

NameName
Last commit message
Last commit date
May 10, 2021
Sep 4, 2023
Dec 14, 2023
Sep 24, 2023
Jul 28, 2021
Jun 8, 2024
Mar 27, 2024
Apr 22, 2016
Aug 27, 2018
Apr 10, 2020
Aug 15, 2013
Dec 1, 2022
Aug 27, 2018
Oct 23, 2023

Repository files navigation

DUnitX Overview

DUnitX is a new test framework, taking ideas from DUnit, NUnit and other test frameworks. It is designed to work with Delphi 2010 or later, it makes use of language/RTL features that are not available in older versions of Delphi.

DUnitX Features

  • Any class can contain tests
  • Attribute based testing
  • An extensive Assert Class
  • Setup and TearDown per test method and per test fixture.
  • API Documented using Xml-Doc
  • Console Based Runner
  • XML Logging
    • produces output compatible with NUnit (compatible with CI servers like ContinuaCI)
    • produces output compatible with JUnit (compatible with Gitlab CI)
  • Cross platform currently supporting:
    • Win32,Win64 and OSX Compilers.
  • Limited backwards compatibility with DUnit test classes.
  • Wizard for creating new tests.

DUnitX Planned Features

This is far from a complete list, but a few planned features are listed here to help indicate future direction.

  • GUI Test Runner - Use TestInsight
  • Multi-threaded tests - the ability to have test fixtures run in their own threads.
  • Remote logging - Simple way to run tests on remote machines (just an idea at this point)
  • Data driven test cases - the ability to provide a test method with a data source and test each entry in the data source. The data source will be virtualised so it can be anything (text file, db table etc).

Tips and Tricks

  • In order to workaround the Delphi XE3 Bug, you need to add the unit DUnitX.Init to your test projects.
  • To use this GitHub version of DUnitX in place of the bundled version included with RAD Studio, it’s pretty simple by following these steps (as the bundled version is quite a few commits behind this repo):
    • Remove the Embarcadero Unit test package (DUnitXIDEExpertXXX.bpl) from the installed packages list.
    • In the cloned repo, open DUnitX_IDE_Expert_XXXX.dproj (matching your Delphi version), compile and install the package.
    • In your unit test projects, adjust your search paths to point to the repo\Source folder.

Support

A Delphi Praxis Forum has been setup to discuss DUnitX.

Contributors

A recent list of contributors can always be obtained on GitHub.

License

Apache Version 2.0 Copyright (C) 2012-2016 Vincent Parrett vincent@finalbuilder.com
http://www.finalbuilder.com

See license.txt for details.

About

Delphi Unit Test Framework

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Pascal 98.0%
  • Batchfile 1.6%
  • Other 0.4%