Giter VIP home page Giter VIP logo

use's Introduction

UnitTestBot: build and run tests Plugin and CLI: publish as archives

๐Ÿ‘‰ Find UnitTestBot on JetBrains Marketplace.

๐Ÿ‘‰ Visit the official UnitTestBot website.

What is UnitTestBot?

UnitTestBot is the tool for automated unit test generation and precise code analysis. It produces ready-to-use test cases for Java โ€” with valid inputs and comments. It can even predict whether the tests fail or pass. You can analyze them, run them, show coverage โ€” as if you've created them personally.

The symbolic execution engine paired with a smart fuzzing technique constitutes the core of UnitTestBot. It helps to find errors and prevent regressions in the code in a much more efficient way โ€” UnitTestBot maximizes path coverage while minimizing the number of tests and false positives.

UnitTestBot represents all the test summaries in a human-readable format. The intelligible test method names and comments help you to control the whole testing process. Test failed? The summary refers you to the related branch or the condition under test.

Get started

Try the online demo to generate unit tests with one click.

Get to know the full version of UnitTestBot plugin with this quick guide:

Install UnitTestBot plugin for IntelliJ IDEA

Try the most straightforward path to start using UnitTestBot plugin.

  1. Please check the system requirements.
  2. Open your IntelliJ IDEA.
  3. Go to File > Settings... > Plugins > Marketplace.
  4. In the search field type UnitTestBot โ€” you'll see the UnitTestBot plugin page.
  5. Press the Install button and wait until it changes to Installed, then click OK.

Now you can find the UnitTestBot plugin enabled in the File > Settings > Plugins window.

Do you want to manually choose the build or to update the plugin? Please refer to Install or update plugin in our user guide.


Generate tests with default configuration

Proceed to generating unit tests for the existing Java project. If you don't have one, create it using the JetBrains tutorial.

  1. Open your Java project in IntelliJ IDEA.
  2. Right-click the required package or a file in the Project tool window, scroll the menu down to the bottom and choose Generate Tests with UnitTestBot...
  3. In the Generate Tests with UnitTestBot window tick the classes or methods you'd like to cover with unit tests and press Generate Tests or Generate and Run.

Now you can see the resulting test class or classes in the Editor tool window.

Need to configure testing framework, mocking strategy or parameterization? Please check all configuration options.


Make use of generated tests

What can you do with the output?

  1. To find and fix the errors in your code:
  • Run the generated tests: right-click the test class or a folder with tests and choose Run.

  • In the Run tool window you can see the tests failed with the brief failure explanation.

  • Fix your errors if needed.

  1. To prevent regressions:
  • Having your errors fixed, run the tests again. "Passed"? Commit them as the regression suite.

  • Introduce changes in the code and run your tests as often as needed!

  • Tests failed? Decide whether it is a bug or a feature and generate new tests if necessary.

  1. To view coverage:

Right-click the test class, choose More Run/Debug > Run ... with Coverage.

Want to know more about test descriptions or SARIF reports? Please learn how to Get use of test results.


Contribute to UnitTestBot

UnitTestBot is an open source project. We welcome everyone who wants to make UnitTestBot better โ€” introduce a new feature or report a bug. We have only one kind request for our contributors: we expect you to prove the necessity and quality of the suggested changes.

How can you do this? Refer to our Contributing guide.

Feel free to join the Discussions!

And thank you for your time and effort! โญ

Find support

Having troubles with using UnitTestBot? Contact us directly.

Find more UnitTestBot products

You can also try UnitTestBot developed especially for C/C++.

You are welcome to contribute to it too!

use's People

Contributors

egorkakulikov avatar vassiliy-kudryashov avatar sofurihafe avatar markoutte avatar mmvpm avatar tamarinvs19 avatar damtev avatar ilyamuravjov avatar domonion avatar amandelpie avatar volivan239 avatar viktoriia-fomina avatar caelmbleidd avatar denis-fokin avatar olganaumenko avatar sergeypospelov avatar sbone-kenobi avatar bissquit avatar rudolf101 avatar alisevych avatar onewhl avatar dtim avatar tepa46 avatar egiptipavel avatar tochilinak avatar nikitavlaev avatar arsenhd avatar janeeugenia avatar atos1337 avatar zishkaz avatar

Watchers

Dmitry Ivanov avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.