Deleted unnecessary libs

Added Element.kt for page classes
Added pageTitle assertion
master
Yevhen Unico 1 year ago
parent 8d6079601c
commit 2f698b45b7

@ -23,13 +23,9 @@ dependencies {
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1'
implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.8.20'
implementation 'org.jetbrains.kotlin:kotlin-reflect:1.8.20'
implementation 'io.cucumber:cucumber-testng:7.14.0'
implementation 'io.cucumber:cucumber-java:7.14.0'
implementation 'org.slf4j:slf4j-api:1.7.32'
implementation 'ch.qos.logback:logback-classic:1.2.6'
implementation 'org.projectlombok:lombok:1.18.30'
implementation 'org.jsoup:jsoup:1.15.4'
implementation 'org.springframework:spring-context:6.0.9'
implementation 'org.testng:testng:7.8.0'
implementation("io.rest-assured:rest-assured:5.1.1")
}

@ -0,0 +1,16 @@
package core.web.elements
import com.microsoft.playwright.Locator
import core.web.browser.InitialBrowser
open class Element {
@JvmField
protected var page = InitialBrowser.getInstance().getPage().context().pages().last()
protected fun `$`(locator: String?): Locator {
return page.context().pages().last().locator(locator)
}
protected fun `$$`(locator: String?): List<Locator> {
return page.context().pages().last().locator(locator).all()
}
}

@ -1,14 +0,0 @@
package projects.example
import core.properties.PropertiesReader
import core.web.elements.Window
import io.cucumber.java.en.Given
class ExamplePageStepDefs {
private val window: Window = Window()
@Given("^user is on example URL$")
fun openExampleURL() {
window.navigateTo(PropertiesReader().urlsProperties().exampleURL)
}
}

@ -0,0 +1,9 @@
package projects.example.pages
import core.web.elements.Element
class examplePage : Element() {
val pageTitle =
`$`("//div//h1")
}

@ -0,0 +1,21 @@
package projects.example.stepDefs
import core.properties.PropertiesReader
import core.web.elements.Window
import projects.example.pages.examplePage
class ExamplePageStepDefs {
private val window: Window = Window()
private val examplePage: examplePage
get() = examplePage()
fun openExampleURL() {
window.navigateTo(PropertiesReader().urlsProperties().exampleURL)
}
fun assertPageTitle(title: String){
if (!examplePage.pageTitle.textContent().equals(title)) {
throw AssertionError("Expected title: '$title', but found: '$examplePage.pageTitle'")
}
}
}

@ -1,9 +1,10 @@
import org.testng.annotations.Test
import projects.example.ExamplePageStepDefs
import projects.example.stepDefs.ExamplePageStepDefs
class UITestTask {
@Test
fun openExampleUrl() {
ExamplePageStepDefs().openExampleURL()
ExamplePageStepDefs().assertPageTitle("Example Domain")
}
}
Loading…
Cancel
Save