Classificar os testes de miniteste por duração

TLDR; sort -t = -k 2 -g

Às vezes é interessante saber quais testes são rápidos e quais não são.

O Minitest permite que você exiba o tempo decorrido de cada teste passando o -vsinalizador.

Saída do Minitest

A saída chamada -vde minitest é semelhante a:

...
CookiesTest#test_encrypted_cookie_using_marshal_serializer = 0.57 s = .
CookiesTest#test_encrypted_cookie_using_custom_digest = 0.58 s = .
CookiesTest#test_encrypted_cookie_using_default_serializer = 0.58 s = .
CookiesTest#test_encrypted_cookie_using_json_serializer = 0.58 s = .
...

O comando para classificar esta saída por sua duração é

sort -t = -k 2 -g

Exemplos

ancinho

rake test TESTOPTS=-v | sort -t = -k 2 -g

ruby -Ilib: test

ruby -Ilib:test ... -v | sort -t = -k 2 -g

Como uma função bash

Eu alterei a função de classificação para mt_sortpara que eu possa fazer facilmente

rake test TESTOPTS=-v | mt_sort