0

テストに browserstack を使用していますが、browserstack にドライバーを認識させることができません。このテストは、ローカルで実行すると問題なく動作し、パスします。ブラウザスタックが提供するサンプル テストもエラーなしでパスします。

これが私のエラーです:

test/silver_auction_application.rb:68:in `test_silver_auction_application'
     65:   
     66:   def test_silver_auction_application
     67:     # @driver.get(@base_url + "/")
  => 68:     @driver.find_element(:id, "login").click
     69:     @driver.find_element(:link, "Sign Up Now!").click
     70:     @driver.find_element(:link, "Select Silver").click
     71:     @driver.find_element(:id, "user_email").clear

コードは次のとおりです。

require "json"
require "selenium-webdriver"
gem "test-unit"
require 'rubygems'



class SilverAuctionApplication < Test::Unit::TestCase
    # Input capabilities
    def setup
        caps = Selenium::WebDriver::Remote::Capabilities.new
        caps["browser"] = "IE"
        caps["browser_version"] = "7.0"
        caps["os"] = "Windows"
        caps["os_version"] = "XP"
        caps["browserstack.debug"] = "true"
        caps["name"] = "Testing Selenium 2 with Ruby on BrowserStack"

        @driver = Selenium::WebDriver.for(:remote,
          :url => "my url",
          :desired_capabilities => caps)
        @driver.navigate.to "http://localhost:3000/"
        puts @driver.title
    end

    def teardown
        @driver.quit
    end




def test_silver_auction_application
    @driver.get(@base_url + "/")
    @driver.find_element(:id, "login").click
    @driver.find_element(:link, "Sign Up Now!").click
    @driver.find_element(:link, "Select Silver").click
    @driver.find_element(:id, "user_email").clear
    @driver.find_element(:id, "user_email").send_keys "mercarisseller@gmail.com"
    @driver.find_element(:id, "user_first_name").clear
    @driver.find_element(:id, "user_first_name").send_keys "Seller"
    @driver.find_element(:id, "user_last_name").clear
    @driver.find_element(:id, "user_last_name").send_keys "Mercaris"
    @driver.find_element(:id, "user_password").clear
    @driver.find_element(:id, "user_password").send_keys "Organic123"
    @driver.find_element(:id, "user_password_confirmation").clear
    @driver.find_element(:id, "user_password_confirmation").send_keys "Organic123"
    @driver.find_element(:id, "organization_name").clear
    @driver.find_element(:id, "organization_name").send_keys "Seller's Org."
    @driver.find_element(:name, "newsletter").click
    @driver.find_element(:id, "required").click
    @driver.find_element(:name, "commit").click
    @driver.find_element(:id, "populate").click
    @driver.find_element(:id, "cc-submit").click
    @driver.find_element(:link, "<< Back to Account").click
    @driver.find_element(:link, "Click here to connect your bank account.").click
    @driver.find_element(:id, "populate").click
    @driver.find_element(:id, "ba-submit").click
    @driver.find_element(:link, "Back To Dashboard").click
   end
end
4

1 に答える 1

2

これは、BrowserStack を代表して返信する Umang です。

「my url」が BrowserStack の Selenium Hub を指している場合http://USERNAME:ACCESS_KEY@hub.browserstack.com/wd/hub、テストは BrowserStack で実行する必要があります。

また、テストしている URL は「http://localhost:3000/」です。BrowserStack のローカル サーバーにアクセスする場合は、BrowserStack のローカル テスト機能を使用する必要があります。次の手順を実行できます。

a)次のコマンドを実行して、バイナリを使用して Local Testing 接続をセットアップします。

Browserstacklocal.exe <automate-key>

b)'browserstack.local' = 'true'テスト スクリプトに機能を追加します。

それでも問題が解決しない場合は、support@browserstack.com にメールを送信することをお勧めします。喜んでお手伝いさせていただきます。

于 2015-04-24T15:05:57.173 に答える