SeleniumBuilder alternatives and similar libraries
Based on the "Tests" category.
Alternatively, view SeleniumBuilder alternatives based on common mentions on social networks and blogs.
-
Kotest
Kotest is a flexible and comprehensive testing tool for Kotlin with multiplatform support. Previously known as Kotlintest - From release 4.0 this project is now known as Kotest -
balin
Balin is a browser automation library for Kotlin. It's basically a Selenium-WebDriver wrapper library inspired by Geb. -
arbitrater
Arbitrater is a library for creating arbitrary (randomized) instances of classes by reflection for use in testing. -
kwik
A property-based testing library for Kotlin. Execute tests with randomized inputs with a test-engine agnostic and compile-time safe library.
Get performance insights in less than 4 minutes
Do you think we are missing an alternative of SeleniumBuilder or a related project?
README
SeleniumBuilder
DSL for Selenium. Provide a possibility to write tests in Kotlin type-safe builders style
Sample
driver(ChromeDriver()) {
get("http://cool-website.com")
elementByClass("login") {
sendKeys("[email protected]")
}
elementByName("password") {
sendKeys("123456")
submit()
}
element(By.className("search")) {
sendKeys("kotlin")
}
wait(10) {
elementVisibilityById("result-item") {
elementByClass("salary") {
item.salary = text
}
}
}
}
Total function list
Driver builders
driver(driver: WebDriver) {}
chromeDriver {}
chromeDriver(pathToDriver: String) {}
firefoxDriver {}
firefoxDriver(pathToDriver: String) {}
WebDriver
and WebElement
element builders
element(by: By) {}
elementById(id: String) {}
elementByClass(className: String) {}
elementByName(name: String) {}
elementBySelector(selector: String) {}
elementByXpath(selector: String) {}
WebDriver
and WebElement
element list builders
elements(by: By) {}
elementsById(id: String) {}
elementsByClass(className: String) {}
elementsByName(name: String) {}
elementsBySelector(selector: String) {}
elementsByXpath(selector: String) {}
WebDriver
and WebElement
element exists functions
elementExists(by: By): Boolean
elementByIdExists(id: String): Boolean
elementByClassExists(className: String): Boolean
elementByNameExists(name: String): Boolean
elementBySelectorExists(selector: String): Boolean
elementByXpathExists(selector: String): Boolean
WebDriver
WebDriverWait
builder
wait(timeout: Long) {}
WebDriverWait
element visibility builders
elementVisibility(by: By) {}
elementVisibilityById(id: String) {}
elementVisibilityByClass(className: String) {}
elementVisibilityByName(name: String) {}
elementVisibilityBySelector(selector: String) {}
elementVisibilityByXpath(xpath: String) {}
WebDriverWait
element invisibility functions
elementInvisibility(by: By): Boolean
elementInvisibilityById(id: String): Boolean
elementInvisibilityByClass(className: String): Boolean
elementInvisibilityByName(name: String): Boolean
elementInvisibilityBySelector(selector: String): Boolean
elementInvisibilityByXpath(xpath: String): Boolean