michael-herbst.com My research and projects

michael-herbst.com
  • Blog
    • Recent articles
    • Article archives
  • Research
    • DFTK / Methods for high-throughput DFT
    • adcc / CVS description of core-excited states
    • Coulomb-Sturmian basis functions
    • Finite-element-based Hartree Fock
  • Publications
  • Upcoming
  • Curriculum Vitae
  • Teaching
    • Julia day 2019
    • Advanced bash scripting 2017
    • Introduction to awk programming 2016
    • All teaching resources
  • Contact

[c¼h] Testen mit Rapidcheck und Catch

Last Thursday, I gave another short talk at the Heidelberg Chaostreff NoName e.V. This time I talked about writing tests in C++ using the testing libraries rapidcheck and Catch.

In the talk I presented some ideas how to incorporate property-based testing into test suites for C++ programs. The idea of property-based testing originates from the Haskell library QuickCheck, which tries to use properties of the input data and of properties of the output data in order to generate random test cases for a code unit. So instead of testing a piece of code with just a small number of static tests, which are the same for each run of the test suite, we test with randomly seeded data. Additionally, if a test fails, QuickCheck/rapidcheck automatically simplifies the test case in order to find the simplest input, which yields a failing test. This of cause eases finding the underlying bug massively.

Since this was our first Treff in the new Mathematikon building, the University just opened recently, we had a few technical difficulties with our setup. As a result there is no recording of my talk available this time, unfortunately. The example code I used during the presentation, however, is available on github. It contains a couple of buggy classes and functions and a Catch based test program, which can be used to find these bugs.

Posted on Mo 14 März 2016 in Chaos.

Tags: talk NoName C++ testing and programming and scripting

Social

  • Blog articles (Atom)
  • github.com/mfherbst
  • 0000-0003-0378-7921
  • arXiv.org preprints

Recent publications

  • Preconditioning for SCFs on inhomogeneous systems
  • Quantifying the error of the CVS approximation
  • Error estimates for non-SCF Kohn-Sham equations
  • adcc: Toolkit for rapid development of ADC methods
  • Construction and convergence of Coulomb Sturmian basis sets at HF level
  • Full list of publications ...

Recent talks

  • High-throughput DFT: An interdisciplinary challenge
  • Challenges / prospects of error estimation in DFT
  • Moansi: Inhomogeneous preconditioning for DFT
  • Full list of talks ...

Recent teaching

  • RWTH Aachen: Introduction to plane-wave DFT and DFTK
  • Julia day at Jussieu
  • DSA Quantenchemie 2018
  • Full list of teaching ...

Blog categories

  • Chaos
  • Publications
  • Research
  • System Administration
  • Teaching
  • Uncategorised

    Blog tags

  • adcc
  • algebraic-diagrammatic construction
  • computer science
  • conference
  • contraction-based methods
  • convergence
  • Coulomb Sturmians
  • dft
  • DFTK
  • electronic structure theory
  • finite elements
  • Hartree-Fock
  • HPC
  • invited talk
  • Julia
  • lazy matrices
  • programming and scripting
  • talk
  • theoretical chemistry
  • workshop
Powered by pelican, python and Jinja2.
Licence plate
Except where otherwise noted, content on this
site is licensed under a Attribution-ShareAlike
4.0 International Licence