Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/oussama-zbair/tdd-dojo
Test Driven Development (TDD) Practice with Java & Junit4
https://github.com/oussama-zbair/tdd-dojo
java junit4 maven object-oriented-programming tdd-java test-driven-development testing unit-testing
Last synced: about 1 month ago
JSON representation
Test Driven Development (TDD) Practice with Java & Junit4
- Host: GitHub
- URL: https://github.com/oussama-zbair/tdd-dojo
- Owner: oussama-zbair
- Created: 2022-11-04T21:08:23.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2022-12-22T15:02:46.000Z (about 2 years ago)
- Last Synced: 2023-10-15T20:25:19.662Z (about 1 year ago)
- Topics: java, junit4, maven, object-oriented-programming, tdd-java, test-driven-development, testing, unit-testing
- Language: Java
- Homepage:
- Size: 38.1 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Test-driven development (TDD) is a software development approach that involves writing tests for your code before you write the code itself. This approach helps to ensure that the code meets the requirements and works correctly.
To do TDD with Java, you will need a testing framework. There are many testing frameworks available for Java, but some popular ones include JUnit and TestNG. These frameworks provide the tools and APIs needed to write and run tests for your Java code.
Here is an example of how to use JUnit to do TDD with Java:
1. First, add the JUnit dependency to your project. This will allow you to use the JUnit APIs in your tests.
```xml
junit
junit
4.12
test```
2. Next, write a test that describes the desired behavior of the code. For example, let's say we want to write a method that calculates the sum of two numbers. The test might look something like this:
```java
import org.junit.Test;
import static org.junit.Assert.*;public class CalculatorTest {
@Test
public void testCalculateSum() {
int x = 3;
int y = 4;
int expectedSum = 7;
int actualSum = Calculator.calculateSum(x, y);
assertEquals(expectedSum, actualSum);
}
}
```3. Next, run the test to see if it fails. Since we haven't written the **calculateSum()** method yet, the test should fail.
4. Now, write the **calculateSum()** method and make sure it passes the test. The method might look something like this:
```java
public class Calculator {
public static int calculateSum(int x, int y) {
return x + y;
}
}
```
5. Run the test again to make sure it passes. If it does, then we can be confident that the **calculateSum()** method is working correctly.This is just a simple example, but it illustrates the basic idea behind TDD with Java. By writing tests before the code itself, we can ensure that our code meets the desired specifications and works correctly.
------------
With the goal of advancing my TDD practice, I created solutions for two exercises frequently given in Java software engineering interviews, featuring a train and a restaurant scenario. The source code can be accessed for review