Easytest
¶ ↑
makes you write tests easily
Easytest
is a tiny testing framework for Ruby with a familiar DSL.
Installation¶ ↑
Add this line to your Gemfile
for Bundler:
gem "easytest"
Or install it via gem
:
gem install easytest
Documentation¶ ↑
You can read more about Easytest
on the official website.
Usage¶ ↑
This section explains easy usage.
First, put test/addition_test.rb
as below:
require "easytest" extend Easytest::DSL test "addition" do expect(1 + 2).to_eq 2 end
Then, run easytest
:
$ easytest FAIL test/addition_test.rb ✕ addition (should equal) Expected: 2 Received: 3 # test/addition_test.rb:6:in `block in <top (required)>' Tests: 1 failed, 0 passed, 1 total (1 files) Time: 0.00087 seconds
Oops. Let’s fix the failure:
- expect(1 + 2).to_eq 2 + expect(1 + 2).to_eq 3
Then, run it again:
$ easytest PASS test/addition_test.rb Tests: 1 passed, 1 total (1 files) Time: 0.00077 seconds
The test now passes! 🎉
Hooks¶ ↑
You can add hooks called before
and after
to each test case:
before do # set up something... end after do # clean up something... end test "something" do # test something... end
Skip¶ ↑
If you want to skip any cases, you can change test
to skip
:
- test "addition" do + skip "addition" do
Skipped cases will be reported as “skipped”.
Only¶ ↑
If you want to run only any cases, you can use test
to only
:
- test "addition" do + only "addition" do
Only cases with only
will be run, and other cases will be skipped.
To-do¶ ↑
If you want to write to-do cases, you can use test
without a block:
test "addition"
To-do cases will be reported as “todo”.
Watch¶ ↑
If you want to run tests immediately when changing code, specify the --watch
option:
easytest --watch
This watch mode is useful during development.