Ниже Простой калькулятор приложений, и я хочу, чтобы проверить его с помощью Junit4 и Mockito Framework я проверить это приложение на Junit4 и она работает нормально, но я столкнулся вопрос о реализации MockitoТестирование активности с использованием Mockito Framework
CalculatorOperationsInterfaces. Java
public interface CalculatorOperationsInterfaces {
public double add(double input1, double input2);
public double subtract(double input1, double input2);
public double multiply(double input1, double input2);
public double divide(double input1, double input2);
}
MainActivity.java
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity implements CalculatorOperationsInterfaces {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public double add(double input1, double input2) {
return (input1 + input2);
}
@Override
public double subtract(double input1, double input2) {
return (input1 - input2);
}
@Override
public double multiply(double input1, double input2) {
return (input1 * input2);
}
@Override
public double divide(double input1, double input2) {
if(input2==0)
return -1;
else
return (input1/input2);
}
}
CalculatorOperationsMockTest.java
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import static org.mockito.Mockito.when;
// @RunWith attaches a runner with the test class to initialize the test data
@RunWith(MockitoJUnitRunner.class)
public class CalculatorOperationsMockTest {
//@Mock annotation is used to create the mock object to be injected
@Mock
CalculatorOperationsInterfaces calcService;
@Before
public void setUp() {
calcService = new MainActivity();
}
@After
public void tearDown() {
calcService = null;
}
@Test
public void add(){
//add the behavior of calc service to add two numbers
when(calcService.add(10.0,20.0)).thenReturn(30.00);
//test the add functionality
Assert.assertEquals(calcService.add(10.0, 20.0),30.0,0);
}
}
Я успешно проверить Выше MainActivity.java
с помощью Junit
, но я новичок в рамках Mockito, когда я пытаюсь запустить CalculatorOperationsMockTest.java
файл я получаю ошибку ниже, и я не знаю, как чтобы решить его
Class not found: "myappmania.local_jvm_unit_test.CalculatorOperationsMockTest"Empty test suite.