devmate currently only supports Visual Studio 2019. Make sure you have Visual Studio 2019 installed.
You can install devmate in IntelliJ using the Jetbrains plugin store.
Please note that the early versions of devmate for Java (V0.x) are to be installed from the beta-store (see the steps below).
To use devmate your PC should meet the following requirements:
Please send us an email to: firstname.lastname@example.org
Yes on our webpage we have created a whole section that offers a detailed description of devmate and tutorials. You can find it under https://www.devmate.software/docs/
By focusing solely on black-box testing, devmate encourages you to implement tests that are independent from your code. This results in tests that have not been changed when you refactor your code. Refactoring is major part of the software development process and adapt the test suite to this changes can be very hard. devmate will:
Testing software can be roughly divided into two approaches. White-box testing and black-box testing. White-box focuses on the implemented code. It makes sure that as much code as possible is reached by test at least once. What this approach does not cover is, if the implementation meets the requirements. Checking this condition is the main goal of black-box testing. Here you ignore the implementation and only use the requirements to derive test cases. Therefore if you want to check if a piece of code does what its supposed to do you should use black-box testing.
Every method parameter that is annotated by ‘ref’ or ‘out’ in C# can potentially have side effects within the method execution. Because of that devmate allows you to check for potential side effects. Each test case therfore has a field ‘Expected Side Effects’.
In the side effects dialog you can check which reference input parameter should be checked for side effects and set the expected value that this parameter should have after the execution of the method.
Choose a method for which you would like to create a boilerplate template. Right click on it and choose ‘Create Boilerplate with devmate’. Select the favoured unit testing framework (XUnit, NUnit, MSTest).
devmate currently supports XUnit, NUnit and MSTest.
Click in the top task bar in Visual Studio on Extensions>devmate>Introduction Video.
Expected side effects for a test case can only be defined if your test case has a selected representative for each input factor.
Generating test cases requires at least one positive equivalence class for each input parameter and at least one representative for each equivalence class.
Characters can be passed in two ways. You can either enter a character under single-quotes (e.g. ‘2’) or you can enter the numeric value of a character (e.g. 50). A non-alphanumeric character can only be passed by its numeric value.
You can set the value of a string to null by entering the text null. If you want to pass the string “null”, enter the text “null” (with the quotes).
You can switch to the desired framework by clicking on the gear icon next to the “Generate Test Code” button.
Yes. We encourage you to check-in the test code into your VCS. devmate allows you to modify generated code and merge any changes in the test model upon newly generating code. You just have to make sure not to touch the test-data in the code itself or dramatically changing the structure of the code.
To generate tests with devmate you have to do three steps.
We currently don’t support checking of input parameters.
Every method can potentially throw exceptions. For each test case you can therefore define an exception as a potential return value in the footer of each test case next to the ‘Throws:’ label.
The tmdl file (short for test model file) contains the data for the method you want to test. It includes input factors, equivalence classes, representatives and test cases with all it’s values and properties.
Edit it in the user interface of devmate in you development environment (e.g. Visual Studio or IntelliJ).
Avoid manual editing of the .tmdl file because the file structure may be broken and devmate will will no longer work correctly!
Equivalence class partitioning is a software testing technique that divides the input data of a software unit into partitions of equivalent data from which test cases can be derived. https://en.wikipedia.org/wiki/Equivalence_partitioning
You can create a test model by doing a right click inside a method. Select ‘Test with devmate’. We do not yet support:
From a method you can open an editor in which you can define equivalence classes, representatives and test cases. This information is called test model.
When you visit any web site, it may store or retrieve information on your browser, mostly in the form of cookies. Control your personal Cookie Services here.