Best JGiven code snippet using com.tngtech.jgiven.config.TagConfiguration.ignoreValue
Source:TagCreator.java
...93 }94 private List<Tag> processConfiguredAnnotation(TagConfiguration tagConfig) {95 if (!tagConfig.isIgnoreValue()) {96 log.warn(97 "Tag configuration 'ignoreValue', set to 'false' is ignored, "98 + "because no annotation that could be respected was given.");99 }100 Tag tag = createStyledTag(tagConfig);101 tag.setTags(tagConfig.getTags());102 String value = tagConfig.getDefaultValue();103 setIfNotNullOrEmpty(value, tag::setValue);104 tag.setDescription(getDescriptionFromGenerator(tagConfig, null, value));105 tag.setHref(getHref(tagConfig, null, value));106 return Collections.singletonList(tag);107 }108 private Tag createStyledTag(TagConfiguration tagConfig) {109 Tag tag = new Tag(tagConfig.getAnnotationFullType());110 tag.setType(tagConfig.getAnnotationType());111 tag.setPrependType(tagConfig.isPrependType());112 tag.setShowInNavigation(tagConfig.showInNavigation());113 setIfNotNullOrEmpty(tagConfig.getName(), tag::setName);114 setIfNotNullOrEmpty(tagConfig.getCssClass(), tag::setCssClass);115 setIfNotNullOrEmpty(tagConfig.getColor(), tag::setColor);116 setIfNotNullOrEmpty(tagConfig.getStyle(), tag::setStyle);117 return tag;118 }119 private void setIfNotNullOrEmpty(String value, Consumer<String> setter) {120 if (!Strings.isNullOrEmpty(value)) {121 setter.accept(value);122 }123 }124 private Optional<Object> getValuesFromAnnotation(Annotation annotation) {125 try {126 Method method = annotation.annotationType().getMethod("value");127 return Optional.ofNullable(method.invoke(annotation));128 } catch (NoSuchMethodException ignoreAnnotationsThatAreNotTags) {129 return Optional.empty();130 } catch (Exception e) {131 log.error("Error while getting 'value' method of annotation " + annotation, e);132 return Optional.empty();133 }134 }135 TagConfiguration toTagConfiguration(Class<? extends Annotation> annotationType) {136 IsTag isTag = annotationType.getAnnotation(IsTag.class);137 if (isTag != null) {138 return fromIsTag(isTag, annotationType);139 }140 return configuration.getTagConfiguration(annotationType);141 }142 private TagConfiguration fromIsTag(IsTag isTag, Class<? extends Annotation> annotationType) {143 String name = isTag.name();144 return TagConfiguration.builder(annotationType)145 .defaultValue(isTag.value())146 .description(isTag.description())147 .explodeArray(isTag.explodeArray())148 .ignoreValue(isTag.ignoreValue())149 .prependType(isTag.prependType())150 .name(name)151 .descriptionGenerator(isTag.descriptionGenerator())152 .cssClass(isTag.cssClass())153 .color(isTag.color())154 .style(isTag.style())155 .tags(getNamesOfParentTags(annotationType))156 .href(isTag.href())157 .hrefGenerator(isTag.hrefGenerator())158 .showInNavigation(isTag.showInNavigation())159 .build();160 }161 private List<String> getNamesOfParentTags(Class<? extends Annotation> annotationType) {162 return getTagAnnotationsOn(annotationType)...
Source:TagConfiguration.java
...13 */14public class TagConfiguration {15 private final String annotationType;16 private final String annotationFullType;17 private boolean ignoreValue;18 private boolean explodeArray = true;19 private boolean prependType;20 private String defaultValue = "";21 private String description = "";22 private String color = "";23 private String cssClass = "";24 private String style = "";25 private Class<? extends TagDescriptionGenerator> descriptionGenerator = DefaultTagDescriptionGenerator.class;26 private String name = "";27 private List<String> tags = Lists.newArrayList();28 private String href = "";29 private Class<? extends TagHrefGenerator> hrefGenerator = DefaultTagHrefGenerator.class;30 private boolean showInNavigation = true;31 public TagConfiguration( Class<? extends Annotation> tagAnnotation ) {32 this.annotationType = tagAnnotation.getSimpleName();33 this.annotationFullType = tagAnnotation.getName();34 }35 public static Builder builder( Class<? extends Annotation> tagAnnotation ) {36 return new Builder( new TagConfiguration( tagAnnotation ) );37 }38 public static class Builder {39 final TagConfiguration configuration;40 Builder( TagConfiguration configuration ) {41 this.configuration = configuration;42 }43 public Builder ignoreValue( boolean b ) {44 configuration.ignoreValue = b;45 return this;46 }47 public Builder explodeArray( boolean b ) {48 configuration.explodeArray = b;49 return this;50 }51 public Builder defaultValue( String s ) {52 configuration.defaultValue = s;53 return this;54 }55 public Builder description( String s ) {56 configuration.description = s;57 return this;58 }59 public Builder descriptionGenerator( Class<? extends TagDescriptionGenerator> descriptionGenerator ) {60 configuration.descriptionGenerator = descriptionGenerator;61 return this;62 }63 public Builder name( String s ) {64 configuration.name = s;65 return this;66 }67 public Builder prependType( boolean b ) {68 configuration.prependType = b;69 return this;70 }71 public Builder cssClass( String cssClass ) {72 configuration.cssClass = cssClass;73 return this;74 }75 public Builder color( String color ) {76 configuration.color = color;77 return this;78 }79 public Builder style( String style ) {80 configuration.style = style;81 return this;82 }83 public Builder tags( List<String> tags ) {84 configuration.tags = tags;85 return this;86 }87 public Builder href( String s ) {88 configuration.href = s;89 return this;90 }91 public Builder hrefGenerator( Class<? extends TagHrefGenerator> hrefGenerator ) {92 configuration.hrefGenerator = hrefGenerator;93 return this;94 }95 public Builder showInNavigation( boolean value ) {96 configuration.showInNavigation = value;97 return this;98 }99 public TagConfiguration build() {100 return configuration;101 }102 }103 /**104 * @see com.tngtech.jgiven.annotation.IsTag#value105 */106 public String getDefaultValue() {107 return defaultValue;108 }109 /**110 * @see com.tngtech.jgiven.annotation.IsTag#description111 */112 public String getDescription() {113 return description;114 }115 /**116 * @see com.tngtech.jgiven.annotation.IsTag#descriptionGenerator117 */118 public Class<? extends TagDescriptionGenerator> getDescriptionGenerator() {119 return descriptionGenerator;120 }121 /**122 * @see com.tngtech.jgiven.annotation.IsTag#name123 */124 public String getName() {125 return name;126 }127 /**128 * @see com.tngtech.jgiven.annotation.IsTag#explodeArray129 */130 public boolean isExplodeArray() {131 return explodeArray;132 }133 /**134 * @see com.tngtech.jgiven.annotation.IsTag#ignoreValue135 */136 public boolean isIgnoreValue() {137 return ignoreValue;138 }139 /**140 * @see com.tngtech.jgiven.annotation.IsTag#prependType141 */142 public boolean isPrependType() {143 return prependType;144 }145 /**146 * @see com.tngtech.jgiven.annotation.IsTag#color147 */148 public String getColor() {149 return color;150 }151 /**...
Source:AnnotationTagExtractor.java
...42 return TagConfiguration.builder(annotationType)43 .defaultValue(isTag.value())44 .description(isTag.description())45 .explodeArray(isTag.explodeArray())46 .ignoreValue(isTag.ignoreValue())47 .prependType(isTag.prependType())48 .name(name)49 .descriptionGenerator(isTag.descriptionGenerator())50 .cssClass(isTag.cssClass())51 .color(isTag.color())52 .style(isTag.style())53 .tags(getTagNames(typeAnnotations))54 .href(isTag.href())55 .hrefGenerator(isTag.hrefGenerator())56 .showInNavigation(isTag.showInNavigation())57 .build();58 }59 private List<String> getTagNames(Annotation[] annotations) {60 return filterTags(annotations).stream()...
ignoreValue
Using AI Code Generation
1package com.tngtech.jgiven.example;2import com.tngtech.jgiven.Stage;3import com.tngtech.jgiven.annotation.ProvidedScenarioState;4import com.tngtech.jgiven.annotation.ScenarioState;5import com.tngtech.jgiven.config.TagConfiguration;6import com.tngtech.jgiven.junit.SimpleScenarioTest;7import com.tngtech.jgiven.tags.Issue;8import com.tngtech.jgiven.tags.Issue.IssueState;9import com.tngtech.jgiven.tags.Issue.IssueType;10import com.tngtech.jgiven.tags.Issue.IssueValue;11import org.junit.Test;12public class IgnoreValueTest extends SimpleScenarioTest<IgnoreValueTest.TestStage> {13 public void testIgnoreValue() {14 given().a_scenario_state_with_value_$_and_$_and_$_and_$_and_$_and_$_and_$(1, 2, 3, 4, 5, 6, 7);15 when().the_scenario_state_is_set_to_$_and_$_and_$_and_$_and_$_and_$_and_$(1, 2, 3, 4, 5, 6, 7);16 then().the_scenario_state_should_be_$_and_$_and_$_and_$_and_$_and_$_and_$(1, 2, 3, 4, 5, 6, 7);17 }18 public static class TestStage extends Stage<TestStage> {19 @Issue(IssueType.BUG)20 @Issue(IssueState.OPEN)21 @Issue(IssueValue.VALUE_1)22 @Issue(IssueValue.VALUE_2)23 @Issue(IssueValue.VALUE_3)24 @Issue(IssueValue.VALUE_4)25 @Issue(IssueValue.VALUE_5)26 @Issue(IssueValue.VALUE_6)27 @Issue(IssueValue.VALUE_7)28 private int scenarioState;29 public TestStage a_scenario_state_with_value_$_and_$_and_$_and_$_and_$_and_$_and_$(int value1, int value2, int value3, int value4, int value5, int value6, int value7) {30 scenarioState = value1 + value2 + value3 + value4 + value5 + value6 + value7;31 return self();32 }
ignoreValue
Using AI Code Generation
1package com.tngtech.jgiven.examples;2import com.tngtech.jgiven.Stage;3import com.tngtech.jgiven.annotation.*;4import com.tngtech.jgiven.config.TagConfiguration;5import com.tngtech.jgiven.junit.SimpleScenarioTest;6import static org.assertj.core.api.Assertions.assertThat;7public class JgivenIgnoreValueTest extends SimpleScenarioTest<GivenIgnoreValueTest, WhenIgnoreValueTest, ThenIgnoreValueTest> {8 @IgnoreValue("ignoreValue")9 public void ignore_value() {10 given().ignore_value();11 when().ignore_value();12 then().ignore_value();13 }14}15package com.tngtech.jgiven.examples;16import com.tngtech.jgiven.Stage;17import com.tngtech.jgiven.annotation.IgnoreValue;18import com.tngtech.jgiven.config.TagConfiguration;19public class GivenIgnoreValueTest extends Stage<GivenIgnoreValueTest> {20 @IgnoreValue("ignoreValue")21 public GivenIgnoreValueTest ignore_value() {22 return self();23 }24}25package com.tngtech.jgiven.examples;26import com.tngtech.jgiven.Stage;27import com.tngtech.jgiven.annotation.IgnoreValue;28import com.tngtech.jgiven.config.TagConfiguration;29public class WhenIgnoreValueTest extends Stage<WhenIgnoreValueTest> {30 @IgnoreValue("ignoreValue")31 public WhenIgnoreValueTest ignore_value() {32 return self();33 }34}35package com.tngtech.jgiven.examples;36import com.tngtech.jgiven.Stage;37import com.tngtech.jgiven.annotation.IgnoreValue;38import com.tngtech.jgiven.config.TagConfiguration;39public class ThenIgnoreValueTest extends Stage<ThenIgnoreValueTest> {40 @IgnoreValue("ignoreValue")41 public ThenIgnoreValueTest ignore_value() {42 return self();43 }44}45package com.tngtech.jgiven.examples;46import com.tngtech.jgiven.Stage;47import com.tngtech.jgiven.annotation.IgnoreValue;48import com.tngtech.jgiven.config.TagConfiguration;49public class ThenIgnoreValueTest extends Stage<ThenIgnoreValueTest> {50 @IgnoreValue("ignoreValue")51 public ThenIgnoreValueTest ignore_value() {52 return self();53 }54}55package com.tngtech.jgiven.examples;56import com.tngtech.jgiven
ignoreValue
Using AI Code Generation
1package com.tngtech.jgiven.example.test;2import com.tngtech.jgiven.annotation.*;3import com.tngtech.jgiven.annotation.ScenarioState;4import com.tngtech.jgiven.junit.ScenarioTest;5import com.tngtech.jgiven.report.model.*;6import com.tngtech.jgiven.report.text.TextReportGenerator;7import com.tngtech.jgiven.tags.IgnoredTag;8import com.tngtech.jgiven.tags.IgnoredTag2;9import com.tngtech.jgiven.tags.IgnoredTag3;10import com.tngtech.jgiven.tags.IgnoredTag4;11import com.tngtech.jgiven.tags.IgnoredTag5;12import com.tngtech.jgiven.tags.IgnoredTag6;13import com.tngtech.jgiven.tags.IgnoredTag7;14import com.tngtech.jgiven.tags.IgnoredTag8;15import com.tngtech.jgiven.tags.IgnoredTag9;16import com.tngtech.jgiven.tags.IgnoredTag10;17import com.tngtech.jgiven.tags.IgnoredTag11;18import com.tngtech.jgiven.tags.IgnoredTag12;19import com.tngtech.jgiven.tags.IgnoredTag13;20import com.tngtech.jgiven.tags.IgnoredTag14;21import com.tngtech.jgiven.tags.IgnoredTag15;22import com.tngtech.jgiven.tags.IgnoredTag16;23import com.tngtech.jgiven.tags.IgnoredTag17;24import com.tngtech.jgiven.tags.IgnoredTag18;25import com.tngtech.jgiven.tags.IgnoredTag19;26import com.tngtech.jgiven.tags.IgnoredTag20;27import com.tngtech.jgiven.tags.IgnoredTag21;28import com.tngtech.jgiven.tags.IgnoredTag22;29import com.tngtech.jgiven.tags.IgnoredTag23;30import com.tngtech.jgiven.tags.IgnoredTag24;31import com.tngtech.jgiven.tags.IgnoredTag25;32import com.tngtech.jgiven.tags.IgnoredTag26;33import com.tngtech.jgiven.tags.IgnoredTag27;34import com.tngtech.jgiven.tags.IgnoredTag28;35import com.tngtech.jgiven.tags.IgnoredTag29;36import com.tngtech.jgiven.tags.IgnoredTag30;37import com.tngtech.jgiven.tags.IgnoredTag31
ignoreValue
Using AI Code Generation
1package com.tngtech.jgiven.tags;2import com.tngtech.jgiven.annotation.IsTag;3import com.tngtech.jgiven.config.TagConfiguration;4import com.tngtech.jgiven.tags.IgnoreValue;5@IsTag(value = "IgnoreValue", type = "IgnoreValue")6public class IgnoreValue {7 public static void ignoreValue(String name) {8 TagConfiguration.tag(IgnoreValue.class).ignoreValue(name);9 }10}11package com.tngtech.jgiven.tags;12import com.tngtech.jgiven.annotation.IsTag;13import com.tngtech.jgiven.tags.IgnoreValue;14@IsTag(value = "IgnoreValue", type = "IgnoreValue")15public class IgnoreValue {16 public static void ignoreValue(String name) {17 TagConfiguration.tag(IgnoreValue.class).ignoreValue(name);18 }19}20package com.tngtech.jgiven.tags;21import com.tngtech.jgiven.annotation.IsTag;22import com.tngtech.jgiven.tags.IgnoreValue;23@IsTag(value = "IgnoreValue", type = "IgnoreValue")24public class IgnoreValue {25 public static void ignoreValue(String name) {26 TagConfiguration.tag(IgnoreValue.class).ignoreValue(name);27 }28}29package com.tngtech.jgiven.tags;30import com.tngtech.jgiven.annotation.IsTag;31import com.tngtech.jgiven.tags.IgnoreValue;32@IsTag(value = "IgnoreValue", type = "IgnoreValue")33public class IgnoreValue {34 public static void ignoreValue(String name) {35 TagConfiguration.tag(IgnoreValue.class).ignoreValue(name);36 }37}38package com.tngtech.jgiven.tags;39import com.tngtech.jgiven.annotation.IsTag;40import com.tngtech.jgiven.tags.IgnoreValue;41@IsTag(value = "IgnoreValue", type = "IgnoreValue")42public class IgnoreValue {43 public static void ignoreValue(String name) {44 TagConfiguration.tag(IgnoreValue.class).ignoreValue(name);45 }46}47package com.tngtech.jgiven.tags;48import com.tngtech.jgiven.annotation.IsTag;49import com.tngtech.jgiven.tags.IgnoreValue;50@IsTag(value = "IgnoreValue", type = "IgnoreValue")51public class IgnoreValue {52 public static void ignoreValue(String name) {53 TagConfiguration.tag(Ignore
ignoreValue
Using AI Code Generation
1package com.tngtech.jgiven.examples;2import com.tngtech.jgiven.junit.ScenarioTest;3import com.tngtech.jgiven.tags.Issue;4import com.tngtech.jgiven.tags.Issue.IssueType;5import com.tngtech.jgiven.tags.Issue.IssueValue;6import com.tngtech.jgiven.tags.Issue.IssueValues;7import com.tngtech.jgiven.tags.Issue.IssueValuesProvider;8import com.tngtech.jgiven.tags.Issue.IssueValuesProvider.IssueValueProvider;9import org.junit.Test;10import org.junit.runner.RunWith;11import org.junit.runners.Parameterized;12@RunWith( Parameterized.class )13public class IssueTest extends ScenarioTest<GivenTestStage, WhenTestStage, ThenTestStage> {14 @Parameterized.Parameters( name = "{0}" )15 public static IssueValuesProvider issueValues() {16 return IssueValuesProvider.forClass( IssueTest.class );17 }18 public IssueTest( IssueValue issueValue ) {19 IssueValues.ignoreValue( issueValue );20 }21 @Issue( "1" )22 public void issue_1_is_ignored() {23 given().something();24 when().something_happens();25 then().something_should_be_done();26 }27 @Issue( value = "2", type = IssueType.GITHUB )28 public void issue_2_is_ignored() {29 given().something();30 when().something_happens();31 then().something_should_be_done();32 }33 @Issue( value = "3", type = IssueType.GITHUB, provider = IssueValueProvider.JIRA )34 public void issue_3_is_ignored() {35 given().something();36 when().something_happens();37 then().something_should_be_done();38 }39}40package com.tngtech.jgiven.examples;41import com.tngtech.jgiven.junit.ScenarioTest;42import com.tngtech.jgiven.tags.Issue;43import com.tngtech.jgiven.tags.Issue.IssueType;44import com.tngtech.jgiven.tags.Issue.IssueValue;45import com.tngtech.jgiven.tags.Issue.IssueValues;46import com.tngtech.jgiven.tags.Issue.IssueValuesProvider;47import com.tngtech.jgiven.tags.I
ignoreValue
Using AI Code Generation
1package com.tngtech.jgiven.report.html5;2import com.tngtech.jgiven.config.TagConfiguration;3public class JGivenIgnoreValue {4 public static void main(String[] args) {5 TagConfiguration tagConfiguration = new TagConfiguration();6 tagConfiguration.ignoreValue("ignoreValue");7 System.out.println(tagConfiguration.isValueIgnored("ignoreValue"));8 }9}
ignoreValue
Using AI Code Generation
1public void testIgnoreValue() {2 TagConfiguration tagConfiguration = new TagConfiguration();3 tagConfiguration.ignoreValue("tag1", "value1");4 tagConfiguration.ignoreValue("tag2", "value2");5 tagConfiguration.ignoreValue("tag3", "value3");6 tagConfiguration.ignoreValue("tag4", "value4");7 tagConfiguration.ignoreValue("tag5", "value5");8 tagConfiguration.ignoreValue("tag6", "value6");9 tagConfiguration.ignoreValue("tag7", "value7");10 tagConfiguration.ignoreValue("tag8", "value8");11 tagConfiguration.ignoreValue("tag9", "value9");12 tagConfiguration.ignoreValue("tag10", "value10");13 tagConfiguration.ignoreValue("tag11", "value11");14 tagConfiguration.ignoreValue("tag12", "value12");15 tagConfiguration.ignoreValue("tag13", "value13");16 tagConfiguration.ignoreValue("tag14", "value14");17 tagConfiguration.ignoreValue("tag15", "value15");18 tagConfiguration.ignoreValue("tag16", "value16");19 tagConfiguration.ignoreValue("tag17", "value17");20 tagConfiguration.ignoreValue("tag18", "value18");21 tagConfiguration.ignoreValue("tag19", "value19");22 tagConfiguration.ignoreValue("tag20", "value20");23 tagConfiguration.ignoreValue("tag21", "value21");24 tagConfiguration.ignoreValue("tag22", "value22");25 tagConfiguration.ignoreValue("tag23", "value23");26 tagConfiguration.ignoreValue("tag24", "value24");27 tagConfiguration.ignoreValue("tag25", "value25");28 tagConfiguration.ignoreValue("tag26", "value26");29 tagConfiguration.ignoreValue("tag27", "value27");30 tagConfiguration.ignoreValue("tag28", "value28");31 tagConfiguration.ignoreValue("tag29", "value29");32 tagConfiguration.ignoreValue("tag30", "value30");33 tagConfiguration.ignoreValue("tag31", "value31");34 tagConfiguration.ignoreValue("tag32", "value32");35 tagConfiguration.ignoreValue("tag33", "value33");36 tagConfiguration.ignoreValue("tag34", "value34");37 tagConfiguration.ignoreValue("tag35", "value35");38 tagConfiguration.ignoreValue("tag36", "value36");39 tagConfiguration.ignoreValue("tag37", "value
ignoreValue
Using AI Code Generation
1public void testIgnoreValue() {2 TagConfiguration tagConfiguration = new TagConfiguration();3 tagConfiguration.ignoreValue("ignore");4 assertThat(tagConfiguration.isIgnored("ignore")).isTrue();5}6public void testIgnoreValue() {7 TagConfiguration tagConfiguration = new TagConfiguration();8 tagConfiguration.ignoreValue("ignore");9 assertThat(tagConfiguration.isIgnored("ignore")).isTrue();10}11public void testIgnoreValue() {12 TagConfiguration tagConfiguration = new TagConfiguration();13 tagConfiguration.ignoreValue("ignore");14 assertThat(tagConfiguration.isIgnored("ignore")).isTrue();15}16public void testIgnoreValue() {17 TagConfiguration tagConfiguration = new TagConfiguration();18 tagConfiguration.ignoreValue("ignore");19 assertThat(tagConfiguration.isIgnored("ignore")).isTrue();20}21public void testIgnoreValue() {22 TagConfiguration tagConfiguration = new TagConfiguration();23 tagConfiguration.ignoreValue("ignore");24 assertThat(tagConfiguration.isIgnored("ignore")).isTrue();25}26public void testIgnoreValue() {27 TagConfiguration tagConfiguration = new TagConfiguration();28 tagConfiguration.ignoreValue("ignore");29 assertThat(tagConfiguration.isIgnored("ignore")).isTrue();30}31public void testIgnoreValue() {32 TagConfiguration tagConfiguration = new TagConfiguration();33 tagConfiguration.ignoreValue("ignore");34 assertThat(tagConfiguration.isIgnored("ignore")).isTrue();35}36public void testIgnoreValue() {37 TagConfiguration tagConfiguration = new TagConfiguration();38 tagConfiguration.ignoreValue("ignore");
ignoreValue
Using AI Code Generation
1import com.tngtech.jgiven.annotation.Description;2import com.tngtech.jgiven.annotation.IsTag;3import com.tngtech.jgiven.config.TagConfiguration;4public class Tags {5 @Description("This tag is ignored.")6 public static class IgnoredTag {7 public static IgnoredTag ignoredTag() {8 return new IgnoredTag();9 }10 }11 public static void main(String[] args) {12 TagConfiguration tagConfiguration = new TagConfiguration();13 tagConfiguration.ignoreValue(IgnoredTag.class, "ignoredTag");14 }15}16How to ignore a test in TestNG using @Test(enabled = false) annotation?17How to ignore a test in TestNG using @Test(enabled = false) annotation with a reason?18How to ignore a test in TestNG using @Test(enabled = false) annotation with a reason and dynamic test?19How to ignore a test in TestNG using @Test(enabled = false) annotation with a reason and parameterized test?20How to ignore a test in TestNG using @Test(enabled = false) annotation with a reason and test factory?
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!!