Do you have some annoying tests?
Want to improve your tests so they're easier to maintain?
If so, this package might be for you!
This is a CLI to help find bad mocha tests that could be improved
$ npm install -g mocha-bad-test-finder
$ btf COMMAND
running command...
$ btf (-v|--version|version)
mocha-bad-test-finder/0.0.5 win32-x64 node-v14.4.0
$ btf --help [COMMAND]
USAGE
$ btf COMMAND
...
Find tests that sometimes fail
USAGE
$ btf flaky
OPTIONS
-d, --dir=dir the directory containing tests to search
-h, --help show CLI help
-r, --runs=runs number of test runs to execute
EXAMPLE
$ btf flaky --dir=/some/test/dir --runs=10
# outputs any tests which failed from 10 runs
See code: src\commands\flaky.ts
display help for btf
USAGE
$ btf help [COMMAND]
ARGUMENTS
COMMAND command to show help for
OPTIONS
--all see all commands in CLI
See code: @oclif/plugin-help
Find tests that interact with each other (not implemented yet)
USAGE
$ btf interactive
OPTIONS
-d, --dir=dir the directory containing tests to search
-h, --help show CLI help
EXAMPLE
$ btf interactive --dir=/some/test/dir
# outputs tests from the given directory which failed either when run individually or all together
See code: src\commands\interactive.ts
Find tests that have too many lines of code
USAGE
$ btf large
OPTIONS
-d, --dir=dir the directory containing tests to search
-h, --help show CLI help
-l, --lines=lines number of lines of test code that is too many
-t, --top=top number of tests to find
EXAMPLE
$ btf large --dir=/some/test/dir --lines=50 --top=20
# outputs the 20 largest tests from the given directory that have at least 50 lines
See code: src\commands\large.ts
Find tests that take a long time to execute (not implemented yet)
USAGE
$ btf slow
OPTIONS
-d, --dir=dir the directory containing tests to search
-h, --help show CLI help
-m, --milliSeconds=milliSeconds number of milliseconds to execute that is too many
-t, --top=top number of tests to find
EXAMPLE
$ btf slow --dir=/some/test/dir --milliSeconds=500 --top=20
# outputs the 20 slowest tests from the given directory that take at least 500 milliseconds
See code: src\commands\slow.ts