2016-05-24 58 views
0

我在使用https://github.com/scala-js/scala-js-env-selenium進行瀏覽器內測試,到目前爲止測試在本地瀏覽器中運行良好。現在我想在使用scala-js-env-selenium進行交叉瀏覽器測試

我創造了新的跨瀏覽

import org.openqa.selenium.remote.{DesiredCapabilities, RemoteWebDriver} 
import org.scalajs.jsenv.selenium.{BrowserDriver, SeleniumBrowser} 
import java.net.URL 

object CrossBrowser { 
    def apply(): CrossBrowser = new CrossBrowser 

    val username = "email" 
    // Your username 
    val authkey = "xxxxxxxxxx" // Your authkey 

} 

class CrossBrowser private() extends SeleniumBrowser { 
    def name: String = "RemoteBrowser" 

    def newDriver: BrowserDriver = new CrossDriver 

    private class CrossDriver extends BrowserDriver { 
    protected def newDriver(): RemoteWebDriver = { 
     val caps = new DesiredCapabilities() 

     caps.setCapability("name", "Selenium Test Example") 
     caps.setCapability("build", "1.0") 
     caps.setCapability("browser_api_name", "IE10") 
     caps.setCapability("os_api_name", "Win7x64-C2") 
     caps.setCapability("screen_resolution", "1024x768") 
     caps.setCapability("record_video", "true") 
     caps.setCapability("record_network", "true") 

     new RemoteWebDriver(new URL("http://" + CrossBrowser.username + ":" + CrossBrowser.authkey + "@hub.crossbrowsertesting.com:80/wd/hub"), caps) 
    } 
    } 

} 

和更新生成設置

jsEnv := new org.scalajs.jsenv.selenium.SeleniumJSEnv(CrossBrowser()), 
jsEnv in Test := new org.scalajs.jsenv.selenium.SeleniumJSEnv(CrossBrowser()) 

遠程瀏覽器(https://app.crossbrowsertesting.com)上運行我的測試中,當我跑測試命令我得到了下面的輸出

[trace] Stack trace suppressed: run last client/test:loadedTestFrameworks for the full output. [error] (client/test:loadedTestFrameworks) org.openqa.selenium.WebDriverException: [fc92901a-f56a-4e4b-9d75-953402cbfe35] Test has timed out after 199 seconds [error] Command duration or timeout: 199.20 seconds [error] Build info: version: '2.53.0', revision: '35ae25b1534ae328c771e0856c93e187490ca824', time: '2016-03-15 10:43:46' [error] System info: host: 'Chandras-MacBook-Pro.local', ip: 'xx.xx.xxx.x', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.3', java.version: '1.8.0_25' [error] Driver info: org.openqa.selenium.remote.RemoteWebDriver [error] Capabilities [{browserAttachTimeout=0, enablePersistentHover=true, ie.forceCreateProcessApi=false, pageLoadStrategy=normal, ie.usePerProcessProxy=false, ignoreZoomSetting=false, handlesAlerts=true, version=10, platform=WINDOWS, nativeEvents=true, ie.ensureCleanSession=false, elementScrollBehavior=0, ie.browserCommandLineSwitches=, webdriver.remote.sessionid=fc92901a-f56a-4e4b-9d75-953402cbfe35, requireWindowFocus=false, browserName=internet explorer, initialBrowserUrl=http://localhost:33793/, takesScreenshot=true, javascriptEnabled=true, ignoreProtectedModeSettings=false, enableElementCacheCleanup=true, cssSelectorsEnabled=true, unexpectedAlertBehaviour=dismiss}] [error] Session ID: fc92901a-f56a-4e4b-9d75-953402cbfe35

超時的原因是,測試運行人員試圖在不存在的遠程機器上加載file:/var/folders/n0/c0fyqlqx0gg15mv4t5mchgj80000gn/T/1464125278337-0/scalajsRun.html

是有可能做這種測試..?(文件拷貝到一些服務器,並加載網址。)如果你正在運行的本地測試

回答

相關問題