Quick Test CLI | Stress Testing | CP Tool

Revision en11, by LuchoBazz, 2022-05-31 00:45:31

Hi Codeforces!

I want to share with the entire competitive programming community my latest project: Quick Test CLI, which is a multiplatform open source tool to perform stress testing in competitive programming and that was inspired after watching the following screencasts: 1v1 Coding | 2020 Lockout Championship and How to test your solution in Competitive Programming, on Linux? Made by Errichto some time ago.

Source Code: https://github.com/LuisMBaezCo/quicktest

Docs: https://luismbaezco.github.io/quicktest

Installation: https://luismbaezco.github.io/quicktest/docs/getting-started/installation

What Quick Test CLI provides vs. the traditional way of performing stress testing?

  • Multi-platform
  • Supports several languages (C++, Java, Python, Rust Lang, Go Lang, C, Kotlin)
  • Friendly user interface
  • You don't have to create or use tedious bash scripts
  • It can be a standard for the community
  • It is a collaborative project that can continue to grow for the benefit of the competitive programming community.

Quick Test CLI supports several types of tests:

main gif

quicktest cmp | qt cmp

It checks the correctness of the algorithm we want to verify by comparing it with a brute force solution which is usually very slow, but is 100% sure to provide the correct solution.

quicktest cmp --target-file=main.cpp --correct-file=correct.cpp --gen-file=gen.cpp
# Or shorter:
qt cmp -t main.cpp -c correct.cpp -g gen.cpp

quicktest check | qt check

In some problems more than one answer is accepted, so the quicktest cmp command would not work correctly, in this case a script checker is used to verify the correctness of the algorithm.

quicktest check --target-file=main.cpp --checker-file=correct.cpp --gen-file=gen.cpp
# Or shorter:
qt check -t main.cpp -c check.cpp -g gen.cpp

quicktest stress | qt stress

Verify that the code execution time does not exceed what is allowed, using a random generator for multiple test cases.

Note: In this scenario there is no slower solution with which to compare the correction.

quicktest stress --target-file=main.cpp --gen-file=gen.cpp
# Or shorter:
qt stress -t main.cpp -g gen.cpp

Future Updates

Feature for testing interactive problems is planned to be implemented in future versions


I will be grateful to receive feedback, requests for new features and requests for improvements

Don't forget to give it ⭐in the Github repository

Thanks!

Tags stress-testing, testing, cp-tool, tool

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en14 English LuchoBazz 2023-02-21 19:57:59 0 (published)
en13 English LuchoBazz 2023-02-21 19:56:31 84 (saved to drafts)
en12 English LuchoBazz 2022-05-31 01:33:13 0 (published)
en11 English LuchoBazz 2022-05-31 00:45:31 6
en10 English LuchoBazz 2022-05-31 00:19:51 51
en9 English LuchoBazz 2022-05-29 07:41:39 146
en8 English LuchoBazz 2022-05-29 07:40:02 251
en7 English LuchoBazz 2022-05-29 07:35:09 72
en6 English LuchoBazz 2022-05-29 07:21:51 195
en5 English LuchoBazz 2022-05-29 06:54:48 1599 Tiny change: ' stress`\n\nVerify' -> ' stress`\n------------------------------\n\nVerify'
en4 English LuchoBazz 2022-05-29 06:50:02 114
en3 English LuchoBazz 2022-05-29 06:44:56 82 Tiny change: 'ests:**_\n' -> 'ests:**_\n\n![main gif](https://codeforces.com/98c1a4/main.gif)\n'
en2 English LuchoBazz 2022-05-29 06:43:21 1
en1 English LuchoBazz 2022-05-29 06:41:10 1438 Initial revision (saved to drafts)