All Projects → JuliaPluto → PlutoTest.jl

JuliaPluto / PlutoTest.jl

Licence: MIT license
✔️ Visual, reactive testing library for Julia. Time machine included.

Programming Languages

julia
2034 projects

Projects that are alternatives of or similar to PlutoTest.jl

18s191
Course 18.S191 at MIT, Spring 2021 - Introduction to computational thinking with Julia:
Stars: ✭ 2,094 (+3639.29%)
Mutual labels:  julia-language, pluto-notebooks
NotebookToLaTeX.jl
A Julia package for converting your Pluto and Jupyter Notebooks into beautiful Latex.
Stars: ✭ 70 (+25%)
Mutual labels:  julia-language, pluto-notebooks
static-export-template
A template to automatically convert Pluto notebooks to an HTML website with GitHub Pages. Demo page:
Stars: ✭ 70 (+25%)
Mutual labels:  julia-language, pluto-notebooks
JOLI.jl
Julia Operators LIbrary
Stars: ✭ 14 (-75%)
Mutual labels:  julia-language
mailgrab
Simple and easy to use catch-all SMTP mail server and debugging tool
Stars: ✭ 92 (+64.29%)
Mutual labels:  debugging
FaceDetection.jl
A face detection algorithm using Viola-Jones' rapid object detection framework written in Julia
Stars: ✭ 13 (-76.79%)
Mutual labels:  julia-language
ssh2actions
Connect to GitHub Actions VM via SSH for interactive debugging
Stars: ✭ 62 (+10.71%)
Mutual labels:  debugging
OmniSci.jl
Julia client for OmniSci GPU-accelerated SQL engine and analytics platform
Stars: ✭ 22 (-60.71%)
Mutual labels:  julia-language
iopipe-go
Go agent for AWS Lambda metrics, tracing, profiling & analytics
Stars: ✭ 18 (-67.86%)
Mutual labels:  debugging
BeautifulMakie
https://lazarusa.github.io/BeautifulMakie/
Stars: ✭ 281 (+401.79%)
Mutual labels:  julia-language
windbg js scripts
Toy scripts for playing with WinDbg JS API
Stars: ✭ 135 (+141.07%)
Mutual labels:  debugging
racket-dbg
A server, client and UI for remotely debugging Racket applications.
Stars: ✭ 15 (-73.21%)
Mutual labels:  debugging
BusinessDays.jl
📆 A highly optimized Business Days calculator written in Julia language. Also known as Working Days calculator.
Stars: ✭ 53 (-5.36%)
Mutual labels:  julia-language
exploit
Collection of different exploits
Stars: ✭ 153 (+173.21%)
Mutual labels:  debugging
elixir-fire-brigade-workshop
Workshop "Join the Elixir Fire Brigade - Level-up Your Elixir Debugging Skills" (ElixirConf US 2017)
Stars: ✭ 14 (-75%)
Mutual labels:  debugging
WebDriver.jl
A WebDriver / JSON Wire Protocol Binding Compatible with Selenium for the Julia Language.
Stars: ✭ 30 (-46.43%)
Mutual labels:  julia-language
clockwork-firefox
Clockwork - php dev tools integrated to your browser - Firefox add-on
Stars: ✭ 22 (-60.71%)
Mutual labels:  debugging
awesome print.cr
It dreams about becoming ruby's awesome_print for crystal-lang, under light development.
Stars: ✭ 13 (-76.79%)
Mutual labels:  debugging
OptimizationProblems.jl
Optimization Problems for Julia
Stars: ✭ 65 (+16.07%)
Mutual labels:  julia-language
FstFileFormat.jl
Julia bindings for the fst format
Stars: ✭ 17 (-69.64%)
Mutual labels:  julia-language

PlutoTest.jl (alpha release)

Visual, reactive testing library for Julia

A macro @test that you can use to verify your code's correctness. But instead of just saying "Pass" or "Fail", let's try to show you why a test failed.

  • time travel to replay the execution step-by-step
  • ⭐️ multimedia display ⭐️ to make results easy to read

Demo screencap

Try this demo in your browser

Install & use

First, update Pluto to at least 0.15! That's it, Pluto will automatically install the package when you import/using it.

Inside your notebook, use the @test macro to test whether something returns true:

julia> using PlutoTest

julia> @test 1 + 1 == 2

This package is still an alpha release, don't use it to @test is_safe(crazy_new_bike_design).

Reactive

This testing library is designed to be used inside Pluto.jl, a reactive notebook. If you write your tests in the same notebook as your code, then Pluto will automatically re-run the affected tests after you make a change. Tests that are unaffected will not need to re-run. Neat!

Navigation

When a test gets re-run and it fails outside of your viewport, you will be notified with a red dot on the edge of the screen. You can click on a dot to jump to the test, multiple dots indicate multiple tests.

(Only enabled on Chrome and Firefox for now.)

Future: GitHub Action

In the future, it will be easy to run Pluto-based, PlutoTest-based tests automatically on GitHub Actions or Travis CI. In addition to running your tests, it will upload a rendered notebook as artifact to the test run (sample). If a test failed, you can open the notebook and see why.

How does it work?

Take a look at the source code! (It's a Pluto notebook 🌝)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].