Skip to content

Commit

Permalink
remove video-recorder in TestNG tests
Browse files Browse the repository at this point in the history
  • Loading branch information
asolntsev committed Dec 11, 2020
1 parent b5a384c commit abdb3ef
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 10 deletions.
1 change: 0 additions & 1 deletion gradle/dependencies.gradle
Expand Up @@ -55,7 +55,6 @@ allprojects {
testImplementation("com.automation-remarks:video-recorder-junit5:$videoRecorderVersion") {
exclude group: 'org.awaitility'
exclude group: 'org.aeonbits.owner'
exclude group: 'log4j'
exclude group: 'org.junit.jupiter'
exclude group: 'org.junit.platform'
}
Expand Down
1 change: 0 additions & 1 deletion modules/testng/build.gradle
Expand Up @@ -15,7 +15,6 @@ dependencies {
exclude(group: 'org.apache.ant')
exclude(group: 'com.google.inject')
}
testImplementation 'com.automation-remarks:video-recorder-testng:2.0'
}

tasks.withType(Test) {
Expand Down
13 changes: 8 additions & 5 deletions modules/testng/src/test/java/integration/BaseTest.java
@@ -1,6 +1,5 @@
package integration;

import com.automation.remarks.testng.UniversalVideoListener;
import com.codeborne.selenide.Configuration;
import com.codeborne.selenide.testng.BrowserPerTest;
import com.codeborne.selenide.testng.ScreenShooter;
Expand All @@ -12,22 +11,26 @@
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.Listeners;

import static com.codeborne.selenide.AssertionMode.SOFT;
import static com.codeborne.selenide.AssertionMode.STRICT;
import static org.openqa.selenium.net.PortProber.findFreePort;

@Listeners({SoftAsserts.class, TextReport.class, BrowserPerTest.class, ScreenShooter.class, UniversalVideoListener.class})
@Listeners({SoftAsserts.class, TextReport.class, BrowserPerTest.class, ScreenShooter.class})
abstract class BaseTest {
private static final Logger log = LoggerFactory.getLogger(BaseTest.class);
private static LocalHttpServer server;

@BeforeSuite
void startServer() throws Exception {
void setupAsserts() {
Configuration.assertionMode = STRICT;
}

@BeforeSuite
final void startServer() throws Exception {
if (server == null) {
int port = findFreePort();
log.info("START {} Test NG tests", Configuration.browser);
server = new LocalHttpServer(port, true).start();
Configuration.baseUrl = "https://127.0.0.1:" + port;
Configuration.assertionMode = SOFT;
}
}
}
11 changes: 8 additions & 3 deletions modules/testng/src/test/java/integration/TestNgSampleTest.java
@@ -1,27 +1,32 @@
package integration;

import com.codeborne.selenide.Configuration;
import com.codeborne.selenide.testng.BrowserPerTest;
import com.codeborne.selenide.testng.ScreenShooter;
import com.codeborne.selenide.testng.SoftAsserts;
import com.codeborne.selenide.testng.TextReport;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Listeners;
import org.testng.annotations.Test;

import static com.codeborne.selenide.Condition.text;
import static com.codeborne.selenide.Condition.value;
import static com.codeborne.selenide.Selenide.$;
import static com.codeborne.selenide.Selenide.open;
import com.automation.remarks.video.annotations.Video;

@Listeners({SoftAsserts.class, TextReport.class, BrowserPerTest.class, ScreenShooter.class})
public class TestNgSampleTest extends BaseTest {
@BeforeMethod
public void setUp() {
open("/page_with_selects_without_jquery.html?browser=" + Configuration.browser);
}

@Test @Video
@Test
public void header() {
$("h1").shouldHave(text("Page with selects"));
}

@Test @Video
@Test
public void textArea() {
$("#empty-text-area").val("text for textarea");
$("#empty-text-area").shouldHave(value("text for textarea"));
Expand Down
36 changes: 36 additions & 0 deletions modules/testng/src/test/java/integration/TestNgSoftTest.java
@@ -0,0 +1,36 @@
package integration;

import com.codeborne.selenide.Configuration;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.Test;

import static com.codeborne.selenide.AssertionMode.SOFT;
import static com.codeborne.selenide.Condition.text;
import static com.codeborne.selenide.Condition.value;
import static com.codeborne.selenide.Selenide.$;
import static com.codeborne.selenide.Selenide.open;

public class TestNgSoftTest extends BaseTest {
@Override
@BeforeSuite
final void setupAsserts() {
Configuration.assertionMode = SOFT;
}

@BeforeMethod
public void setUp() {
open("/page_with_selects_without_jquery.html?browser=" + Configuration.browser);
}

@Test
public void header() {
$("h1").shouldHave(text("Page with selects"));
}

@Test
public void textArea() {
$("#empty-text-area").val("text for textarea");
$("#empty-text-area").shouldHave(value("text for textarea"));
}
}

0 comments on commit abdb3ef

Please sign in to comment.