4
셀레늄 테스트를위한 스칼라 사양 정보 또는 프로젝트를 찾고 있습니다. scala 스펙 코드에서 셀레늄 테스트를 호출하려면 어떻게해야합니까?셀레늄, 스펙 및 스칼라
셀레늄 테스트를위한 스칼라 사양 정보 또는 프로젝트를 찾고 있습니다. scala 스펙 코드에서 셀레늄 테스트를 호출하려면 어떻게해야합니까?셀레늄, 스펙 및 스칼라
방금 도움이 될만한 코드를 작성했습니다. 아직 셀레늄 용 스칼라 DSL을 사용하고 있지 않습니다.
class EnrollTest extends FlatSpec with ShouldMatchers{
var driver = new FirefoxDriver
driver.manage.timeouts.implicitlyWait(10, TimeUnit.SECONDS)
val beginnersPage = BeginnersPage.open(driver)
"Enroll button" should "open enroll page" in {
try {
val timeOfFirstCourse = beginnersPage.enrollForTheFirstCourse
val enrollPage = new EnrollPage(driver)
enrollPage.shouldBeOpen
enrollPage.courseDetails should include(timeOfFirstCourse)
}
finally{
driver.quit
}
}
}
그리고 페이지 클래스 :
object BeginnersPage{
val url = "http://"+System.getProperty("testUrl", "www.2ndlanguage.co.uk")+"/beginners.action"
def open(driver : WebDriver) : BeginnersPage = {
driver.get(url)
new BeginnersPage(driver)
}
}
class BeginnersPage(driver : WebDriver){
private var firstEnrollButton: WebElement = driver.findElement(By.xpath("//div[@class='newPriceBoxRight']/a/div"))
private var firstCourseTime: WebElement = driver.findElement(By.xpath("//div[@class='newPriceBoxLeft']//span[@id='time']"))
def enrollForTheFirstCourse : String = {
val time = firstCourseTime.getText
firstEnrollButton.click
time
}
}
class EnrollPage(driver : WebDriver){
def isOpen = driver.getCurrentUrl startsWith "http://www.2ndlanguage.co.uk/offer.action"
def courseDetails = driver.findElement(By.id("courseDetailsTextArea")).getText
}
감사합니다. 아주 간단합니다. – kolchanov
지금까지 당신은 단지 문을 작성했습니다. 아마도 질문으로 단어를 시도해보십시오. – leonm
고맙습니다. 질문이 업데이트되었습니다. – kolchanov
스칼라와 셀레늄에 대해 무엇을 알고 싶습니까? – haroonzone