Skip to main content

Posts

Showing posts from 2018

JUnit – Run unit test in an Sequence / Order

In JUnit, we can use @FixMethodOrder(MethodSorters.xxx) to run the test methods in a sequence or order.

import org.junit.FixMethodOrder;import org.junit.Test;import org.junit.runners.MethodSorters;importstatic org.hamcrest.CoreMatchers.is;importstatic org.junit.Assert.assertThat;//Sorts by method name@FixMethodOrder(MethodSorters.NAME_ASCENDING)publicclassExecutionOrderTest{@TestpublicvoidtestB(){assertThat(1+1,is(2));}@Testpublicvoidtest1(){assertThat(1+1,is(2));}@TestpublicvoidtestA

Get current executing method name in Java

//Get method name using Java.lang.Class.getEnclosingMethod()
    public static void getMethodNameUsingClassInstance() {         String methodNameUsingClassInstance =             new Object() {}.getClass().getEnclosingMethod().getName();         System.out.println("Current Method Execution Name Using Class Instance - " +             methodNameUsingClassInstance);     }

//Get method name using StackTraceElement.getMethodName()
    public static void getMethodNameUsingStackTraceElement() {         StackTraceElement stackTraceElements[] = (new Throwable()).getStackTrace();         System.out.println("Current Method Execution Name Using StackTraceElement - " +             stackTraceElements[0].getMethodName());     }

//Get method name using Thread.currentThread().getStackTrace()
    public static void getMethodNameUsingCurrentThread() {         System.out.println("Current Method Execution Name using Current Thread - " +             Thread.currentThread().getStackTrace()[1].ge…