Best Easymock code snippet using org.easymock.internal.RuntimeExceptionWrapper
Source:MocksControl.java
...49 state.assertRecordState();50 IProxyFactory<T> proxyFactory = createProxyFactory(toMock);51 return proxyFactory.createProxy(toMock, new ObjectMethodsFilter(52 toMock, new MockInvocationHandler(this), null));53 } catch (RuntimeExceptionWrapper e) {54 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();55 }56 }5758 public <T> T createMock(String name, Class<T> toMock) {59 try {60 state.assertRecordState();61 IProxyFactory<T> proxyFactory = createProxyFactory(toMock);62 return proxyFactory.createProxy(toMock, new ObjectMethodsFilter(63 toMock, new MockInvocationHandler(this), name));64 } catch (RuntimeExceptionWrapper e) {65 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();66 }67 }6869 protected <T> IProxyFactory<T> createProxyFactory(Class<T> toMock) {70 return new JavaProxyFactory<T>();71 }7273 public final void reset() {74 behavior = new MocksBehavior(type == MockType.NICE);75 behavior.checkOrder(type == MockType.STRICT);76 state = new RecordState(behavior);77 LastControl.reportLastControl(null);78 }7980 public void resetToNice() {81 type = MockType.NICE;82 reset();83 }84 85 public void resetToDefault() {86 type = MockType.DEFAULT;87 reset(); 88 }89 90 public void resetToStrict() {91 type = MockType.STRICT;92 reset();93 }94 95 public void replay() {96 try {97 state.replay();98 state = new ReplayState(behavior);99 LastControl.reportLastControl(null);100 } catch (RuntimeExceptionWrapper e) {101 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();102 }103 }104105 public void verify() {106 try {107 state.verify();108 } catch (RuntimeExceptionWrapper e) {109 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();110 } catch (AssertionErrorWrapper e) {111 throw (AssertionError) e.getAssertionError().fillInStackTrace();112 }113 }114115 public void checkOrder(boolean value) {116 try {117 state.checkOrder(value);118 } catch (RuntimeExceptionWrapper e) {119 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();120 }121 }122 123 public void makeThreadSafe(boolean threadSafe) {124 try {125 state.makeThreadSafe(threadSafe);126 } catch (RuntimeExceptionWrapper e) {127 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();128 }129 }130 131 public void checkIsUsedInOneThread(boolean shouldBeUsedInOneThread) {132 try {133 state.checkIsUsedInOneThread(shouldBeUsedInOneThread);134 } catch (RuntimeExceptionWrapper e) {135 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();136 }137 }138139 // methods from IBehaviorSetters140141 public IExpectationSetters<Object> andReturn(Object value) {142 try {143 state.andReturn(value);144 return this;145 } catch (RuntimeExceptionWrapper e) {146 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();147 }148 }149150 public IExpectationSetters<Object> andThrow(Throwable throwable) {151 try {152 state.andThrow(throwable);153 return this;154 } catch (RuntimeExceptionWrapper e) {155 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();156 }157 }158159 public IExpectationSetters<Object> andAnswer(IAnswer<? extends Object> answer) {160 try {161 state.andAnswer(answer);162 return this;163 } catch (RuntimeExceptionWrapper e) {164 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();165 }166 }167168 public IExpectationSetters<Object> andDelegateTo(Object answer) {169 try {170 state.andDelegateTo(answer);171 return this;172 } catch (RuntimeExceptionWrapper e) {173 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();174 }175 }176 177 public void andStubReturn(Object value) {178 try {179 state.andStubReturn(value);180 } catch (RuntimeExceptionWrapper e) {181 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();182 }183 }184185 public void andStubThrow(Throwable throwable) {186 try {187 state.andStubThrow(throwable);188 } catch (RuntimeExceptionWrapper e) {189 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();190 }191 }192193 public void andStubAnswer(IAnswer<? extends Object> answer) {194 try {195 state.andStubAnswer(answer);196 } catch (RuntimeExceptionWrapper e) {197 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();198 }199 }200201202 public void andStubDelegateTo(Object delegateTo) {203 try {204 state.andStubDelegateTo(delegateTo);205 } catch (RuntimeExceptionWrapper e) {206 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();207 }208 }209 210 public void asStub() {211 try {212 state.asStub();213 } catch (RuntimeExceptionWrapper e) {214 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();215 }216 }217218 public IExpectationSetters<Object> times(int times) {219 try {220 state.times(new Range(times));221 return this;222 } catch (RuntimeExceptionWrapper e) {223 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();224 }225 }226227 public IExpectationSetters<Object> times(int min, int max) {228 try {229 state.times(new Range(min, max));230 return this;231 } catch (RuntimeExceptionWrapper e) {232 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();233 }234 }235236 public IExpectationSetters<Object> once() {237 try {238 state.times(ONCE);239 return this;240 } catch (RuntimeExceptionWrapper e) {241 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();242 }243 }244245 public IExpectationSetters<Object> atLeastOnce() {246 try {247 state.times(AT_LEAST_ONCE);248 return this;249 } catch (RuntimeExceptionWrapper e) {250 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();251 }252 }253254 public IExpectationSetters<Object> anyTimes() {255 try {256 state.times(ZERO_OR_MORE);257 return this;258 } catch (RuntimeExceptionWrapper e) {259 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();260 }261 }262263 /**264 * Exactly one call.265 */266 public static final Range ONCE = new Range(1);267268 /**269 * One or more calls.270 */271 public static final Range AT_LEAST_ONCE = new Range(1, Integer.MAX_VALUE);272273 /**274 * Zero or more calls.275 */276 public static final Range ZERO_OR_MORE = new Range(0, Integer.MAX_VALUE);277278 @SuppressWarnings("deprecation")279 public void setLegacyDefaultMatcher(org.easymock.ArgumentsMatcher matcher) {280 try {281 state.setDefaultMatcher(matcher);282 } catch (RuntimeExceptionWrapper e) {283 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();284 }285 }286287 @SuppressWarnings("deprecation")288 public void setLegacyMatcher(org.easymock.ArgumentsMatcher matcher) {289 try {290 state.setMatcher(null, matcher);291 } catch (RuntimeExceptionWrapper e) {292 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();293 }294 }295296 public void setLegacyDefaultReturnValue(Object value) {297 try {298 state.setDefaultReturnValue(value);299 } catch (RuntimeExceptionWrapper e) {300 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();301 }302 }303304 public void setLegacyDefaultVoidCallable() {305 state.setDefaultVoidCallable();306 }307308 public void setLegacyDefaultThrowable(Throwable throwable) {309 try {310 state.setDefaultThrowable(throwable);311 } catch (RuntimeExceptionWrapper e) {312 throw (RuntimeException) e.getRuntimeException().fillInStackTrace();313 }314 }315}
...
Source:ReplayStateInvalidCallsTest.java
...67import org.easymock.MockControl;8import org.easymock.internal.MocksBehavior;9import org.easymock.internal.ReplayState;10import org.easymock.internal.RuntimeExceptionWrapper;11import org.junit.Before;12import org.junit.Test;1314public class ReplayStateInvalidCallsTest {1516 private ReplayState control;1718 private Exception exception;1920 @Before21 public void setUp() {22 exception = new Exception();23 control = new ReplayState(new MocksBehavior(false));24 }2526 @Test(expected = RuntimeExceptionWrapper.class)27 public void expectAndThrowLongWithMinMax() {28 control.andThrow(exception);29 }3031 @Test(expected = RuntimeExceptionWrapper.class)32 public void expectAndReturnObjectWithMinMax() {33 control.andReturn("");34 }3536 @Test(expected = RuntimeExceptionWrapper.class)37 public void setDefaultMatcher() {38 control.setDefaultMatcher(MockControl.ARRAY_MATCHER);39 }4041 @Test(expected = RuntimeExceptionWrapper.class)42 public void asStub() {43 control.asStub();44 }4546 @Test(expected = RuntimeExceptionWrapper.class)47 public void setMatcher() {48 control.setMatcher(null, MockControl.ARRAY_MATCHER);49 }5051 @Test(expected = RuntimeExceptionWrapper.class)52 public void setDefaultReturnValue() {53 control.setDefaultReturnValue("");54 }5556 @Test(expected = RuntimeExceptionWrapper.class)57 public void setDefaultThrowable() {58 control.setDefaultThrowable(exception);59 }6061 @Test(expected = RuntimeExceptionWrapper.class)62 public void setDefaultVoidCallable() {63 control.setDefaultVoidCallable();64 }6566 @Test(expected = RuntimeExceptionWrapper.class)67 public void replay() {68 control.replay();69 }7071 @Test(expected = RuntimeExceptionWrapper.class)72 public void checkOrder() {73 control.checkOrder(true);74 }7576 @Test(expected = RuntimeExceptionWrapper.class)77 public void andStubReturn() {78 control.andStubReturn("7");79 }8081 @Test(expected = RuntimeExceptionWrapper.class)82 public void andStubThrow() {83 control.andStubThrow(new RuntimeException());84 }8586 @Test(expected = RuntimeExceptionWrapper.class)87 public void andStubAnswer() {88 control.andStubAnswer(null);89 }9091 @Test(expected = RuntimeExceptionWrapper.class)92 public void times() {93 control.times(MockControl.ONE);94 }9596 @Test(expected = RuntimeExceptionWrapper.class)97 public void callback() {98 control.callback(new Runnable() {99 public void run() {100 };101 });102 }103104 @Test(expected = RuntimeExceptionWrapper.class)105 public void andReturn() {106 control.andReturn(null);107 }108109 @Test(expected = RuntimeExceptionWrapper.class)110 public void andThrow() {111 control.andThrow(new RuntimeException());112 }113114 @Test(expected = RuntimeExceptionWrapper.class)115 public void andAnswer() {116 control.andAnswer(null);117 }118119 @Test(expected = RuntimeExceptionWrapper.class)120 public void defaultThrowable() {121 control.setDefaultThrowable(new RuntimeException());122 }123124 @Test(expected = RuntimeExceptionWrapper.class)125 public void defaultReturnValue() {126 control.setDefaultReturnValue(null);127 }128129 @Test(expected = RuntimeExceptionWrapper.class)130 public void defaultVoidCallable() {131 control.setDefaultVoidCallable();132 }
...
RuntimeExceptionWrapper
Using AI Code Generation
1import org.easymock.internal.RuntimeExceptionWrapper;2public class 1 {3 public static void main(String[] args) {4 try {5 throw new RuntimeExceptionWrapper(new RuntimeException("Test"));6 } catch (RuntimeExceptionWrapper e) {7 System.out.println(e.getMessage());8 System.out.println(e.getCause().getMessage());9 }10 }11}12import org.easymock.RuntimeExceptionWrapper;13public class 2 {14 public static void main(String[] args) {15 try {16 throw new RuntimeExceptionWrapper(new RuntimeException("Test"));17 } catch (RuntimeExceptionWrapper e) {18 System.out.println(e.getMessage());19 System.out.println(e.getCause().getMessage());20 }21 }22}23import org.easymock.internal.RuntimeExceptionWrapper;24public class 3 {25 public static void main(String[] args) {26 try {27 throw new RuntimeExceptionWrapper(new RuntimeException("Test"));28 } catch (RuntimeExceptionWrapper e) {29 System.out.println(e.getMessage());30 System.out.println(e.getCause().getMessage());31 }32 }33}34import org.easymock.RuntimeExceptionWrapper;35public class 4 {36 public static void main(String[] args) {37 try {38 throw new RuntimeExceptionWrapper(new RuntimeException("Test"));39 } catch (RuntimeExceptionWrapper e) {40 System.out.println(e.getMessage());41 System.out.println(e.getCause().getMessage());42 }43 }44}45import org.easymock.internal.RuntimeExceptionWrapper;46public class 5 {47 public static void main(String[] args) {48 try {49 throw new RuntimeExceptionWrapper(new RuntimeException("Test"));50 } catch (RuntimeExceptionWrapper e) {51 System.out.println(e.getMessage());52 System.out.println(e.getCause().getMessage());53 }54 }55}
RuntimeExceptionWrapper
Using AI Code Generation
1import org.easymock.internal.RuntimeExceptionWrapper;2import org.easymock.internal.MocksControl;3import org.easymock.internal.MocksControl.MockType;4import org.easymock.internal.MocksControl.MocksBehavior;5import org.easymock.internal.MocksControl.MocksState;6import org.easymock.internal.MocksControl.MocksControlState;7public class 1 {8 public static void main(String[] args) {9 MocksControl mocksControl = new MocksControl(MockType.DEFAULT);10 MocksState mocksState = new MocksState();11 MocksBehavior mocksBehavior = new MocksBehavior();12 MocksControlState mocksControlState = new MocksControlState(mocksState, mocksBehavior);13 mocksControl.init(mocksControlState);14 mocksControl.replay();15 try {16 mocksControl.verify();17 } catch (RuntimeExceptionWrapper e) {18 System.out.println(e.getCause().getMessage());19 }20 }21}22createMock(Class)23createMockBuilder(Class)24createMock(String, Class)25createMockBuilder(String, Class)26createNiceMock(Class)27createNiceMock(String, Class)28createStrictMock(Class)29createStrictMock(String, Class)30createControl()31createControl(MockType)32createControl(Class)33createControl(String, Class)34createControl(Class, MockType)35createControl(String, Class, MockType)36createControl(Class, MockType, boolean)37createControl(String, Class, MockType, boolean)38createControl(Class, MockType, boolean, boolean)39createControl(String, Class, MockType, boolean, boolean)40createControl(Class, MockType, boolean, boolean, boolean)41createControl(String, Class, MockType, boolean, boolean, boolean)42createControl(Class, MockType, boolean, boolean, boolean, boolean)43createControl(String, Class, MockType, boolean, boolean, boolean, boolean)44createControl(Class, MockType, boolean, boolean, boolean, boolean, boolean)45createControl(String, Class, MockType, boolean, boolean, boolean, boolean, boolean)46createControl(Class, MockType, boolean, boolean, boolean,
RuntimeExceptionWrapper
Using AI Code Generation
1import org.easymock.internal.RuntimeExceptionWrapper;2public class TestException {3 public static void main(String[] args) {4 try {5 throw new RuntimeExceptionWrapper(new Exception("Test Exception"));6 } catch (Exception e) {7 System.out.println(e.getMessage());8 }9 }10}
RuntimeExceptionWrapper
Using AI Code Generation
1package org.easymock.internal;2import java.lang.reflect.Method;3import java.lang.reflect.InvocationTargetException;4public class RuntimeExceptionWrapper {5 public static RuntimeException wrap(Throwable t) {6 if (t instanceof RuntimeException) {7 return (RuntimeException) t;8 }9 try {10 Class<?> wrapperClass = Class.forName("org.easymock.internal.runtime.RuntimeExceptionWrapper");11 Method method = wrapperClass.getMethod("wrap", Throwable.class);12 return (RuntimeException) method.invoke(null, t);13 } catch (ClassNotFoundException e) {14 throw new RuntimeException(t);15 } catch (NoSuchMethodException e) {16 throw new RuntimeException(t);17 } catch (IllegalAccessException e) {18 throw new RuntimeException(t);19 } catch (InvocationTargetException e) {20 throw new RuntimeException(t);21 }22 }23}24package org.easymock.internal;25import java.lang.reflect.Method;26import java.lang.reflect.InvocationTargetException;27public class RuntimeExceptionWrapper {28 public static RuntimeException wrap(Throwable t) {29 if (t instanceof RuntimeException) {30 return (RuntimeException) t;31 }32 try {33 Class<?> wrapperClass = Class.forName("org.easymock.internal.runtime.RuntimeExceptionWrapper");34 Method method = wrapperClass.getMethod("wrap", Throwable.class);35 return (RuntimeException) method.invoke(null, t);36 } catch (ClassNotFoundException e) {37 throw new RuntimeException(t);38 } catch (NoSuchMethodException e) {39 throw new RuntimeException(t);40 } catch (IllegalAccessException e) {41 throw new RuntimeException(t);42 } catch (InvocationTargetException e) {43 throw new RuntimeException(t);44 }45 }46}47package org.easymock.internal;48import java.lang.reflect.Method;49import java.lang.reflect.InvocationTargetException;50public class RuntimeExceptionWrapper {51 public static RuntimeException wrap(Throwable t) {52 if (t instanceof RuntimeException) {53 return (RuntimeException) t;54 }55 try {56 Class<?> wrapperClass = Class.forName("org.easymock.internal.runtime.RuntimeExceptionWrapper");57 Method method = wrapperClass.getMethod("wrap", Throwable.class);58 return (RuntimeException) method.invoke(null, t);59 } catch (ClassNotFoundException e) {60 throw new RuntimeException(t);61 } catch (NoSuchMethodException e) {
RuntimeExceptionWrapper
Using AI Code Generation
1public class Test {2 public static void main(String[] args) {3 RuntimeExceptionWrapper wrapper = new RuntimeExceptionWrapper(new RuntimeException());4 System.out.println(wrapper.getWrappedThrowable());5 }6}
RuntimeExceptionWrapper
Using AI Code Generation
1public class TestRuntimeExceptionWrapper {2 public static void main(String[] args) {3 RuntimeExceptionWrapper wrapper = new RuntimeExceptionWrapper(new4RuntimeException("test"));5 System.out.println(wrapper);6 }7}8public class TestRuntimeExceptionWrapper {9 public static void main(String[] args) {10 RuntimeExceptionWrapper wrapper = new RuntimeExceptionWrapper(new11RuntimeException("test"));12 System.out.println(wrapper);13 }14}15public class TestRuntimeExceptionWrapper {16 public static void main(String[] args) {17 RuntimeExceptionWrapper wrapper = new RuntimeExceptionWrapper(new18RuntimeException("test"));19 System.out.println(wrapper);20 }21}22public class TestRuntimeExceptionWrapper {23 public static void main(String[] args) {24 RuntimeExceptionWrapper wrapper = new RuntimeExceptionWrapper(new25RuntimeException("test"));26 System.out.println(wrapper);27 }28}29public class TestRuntimeExceptionWrapper {30 public static void main(String[] args) {31 RuntimeExceptionWrapper wrapper = new RuntimeExceptionWrapper(new32RuntimeException("test"));33 System.out.println(wrapper);34 }35}36public class TestRuntimeExceptionWrapper {37 public static void main(String[] args) {38 RuntimeExceptionWrapper wrapper = new RuntimeExceptionWrapper(new39RuntimeException("test"));40 System.out.println(wrapper);41 }42}43public class TestRuntimeExceptionWrapper {44 public static void main(String[] args) {45 RuntimeExceptionWrapper wrapper = new RuntimeExceptionWrapper(new46RuntimeException("test"));47 System.out.println(wrapper);48 }49}50public class TestRuntimeExceptionWrapper {51 public static void main(String[] args) {52 RuntimeExceptionWrapper wrapper = new RuntimeExceptionWrapper(new53RuntimeException("test"));54 System.out.println(wrapper);55 }56}
RuntimeExceptionWrapper
Using AI Code Generation
1import org.easymock.EasyMock;2import org.easymock.MockControl;3import org.easymock.internal.RuntimeExceptionWrapper;4import java.util.*;5{6 public static void main(String[] args)7 {8 MockControl mockControl = EasyMock.controlFor(List.class);9 List mockList = (List)mockControl.getMock();10 mockList.get(0);11 mockControl.setThrowable(new RuntimeException());12 mockControl.replay();13 {14 mockList.get(0);15 }16 catch(Exception e)17 {18 if(e instanceof RuntimeExceptionWrapper)19 {20 RuntimeExceptionWrapper re = (RuntimeExceptionWrapper)e;21 System.out.println("Caught RuntimeException: " + re.getCause());22 }23 }24 }25}
RuntimeExceptionWrapper
Using AI Code Generation
1package org.easymock.internal;2import java.lang.reflect.InvocationTargetException;3public class RuntimeExceptionWrapper extends RuntimeException {4 public RuntimeExceptionWrapper(Throwable cause) {5 super(cause);6 }7 public Throwable getCause() {8 return super.getCause();9 }10 public void throwCause() throws Throwable {11 throw getCause();12 }13 public void throwCauseIfChecked() throws Exception {14 Throwable cause = getCause();15 if (cause instanceof Exception) {16 throw (Exception) cause;17 }18 }19}20package org.easymock.internal;21import java.lang.reflect.InvocationTargetException;22public class InvocationTargetExceptionWrapper extends RuntimeException {23 private static final long serialVersionUID = 1L;24 public InvocationTargetExceptionWrapper(InvocationTargetException cause) {25 super(cause);26 }27 public InvocationTargetException getCause() {28 return (InvocationTargetException) super.getCause();29 }30 public void throwCause() throws Throwable {31 throw getCause().getTargetException();32 }33 public void throwCauseIfChecked() throws Exception {34 throw getCause().getTargetException();35 }36}37package org.easymock;38import java.lang.reflect.InvocationTargetException;39public class EasyMock {40 public static <T> T createMock(Class<T> toMock) {41 return createMock(null, toMock, null);42 }43 public static <T> T createMock(String name, Class<T> toMock) {44 return createMock(name, toMock, null);45 }46 public static <T> T createMock(Class<T> toMock, MockType type) {47 return createMock(null, toMock, type);48 }49 public static <T> T createMock(String name, Class<T> toMock, MockType type) {50 return (T) MocksControl.createMock(name, toMock, type);51 }52 public static <T> T createNiceMock(Class<T> toMock) {53 return createNiceMock(null, toMock);54 }
RuntimeExceptionWrapper
Using AI Code Generation
1public class 1 {2 public void methodUnderTest() throws Exception {3 throw new Exception("Exception in methodUnderTest");4 }5}6public class 2 {7 public void testMethodUnderTest() {8 1 mock = EasyMock.createMock(1.class);9 EasyMock.expect(mock.methodUnderTest()).andThrow(new RuntimeExceptionWrapper(new Exception("Exception in methodUnderTest")));10 EasyMock.replay(mock);11 mock.methodUnderTest();12 EasyMock.verify(mock);13 }14}15public class 2 {16 public void methodUnderTest() throws Exception {17 throw new Exception("Exception in methodUnderTest");18 }19}20public class 3 {21 public void testMethodUnderTest() {22 2 mock = EasyMock.createMock(2.class);23 EasyMock.expect(mock.methodUnderTest()).andThrow(new RuntimeExceptionWrapper(new Exception("Exception in methodUnderTest")));24 EasyMock.replay(mock);25 mock.methodUnderTest();26 EasyMock.verify(mock);27 }28}29public class 3 {30 public void methodUnderTest() throws Exception {31 throw new Exception("Exception in methodUnderTest");32 }33}34public class 4 {35 public void testMethodUnderTest() {36 3 mock = EasyMock.createMock(3.class);37 EasyMock.expect(mock.methodUnderTest()).andThrow(new RuntimeExceptionWrapper(new Exception("Exception in methodUnderTest")));38 EasyMock.replay(mock);39 mock.methodUnderTest();40 EasyMock.verify(mock);41 }42}43public class 4 {44 public void methodUnderTest() throws Exception {45 throw new Exception("Exception in methodUnderTest");46 }47}48public class 5 {
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!