我正在使用Sinatra和rspec-capybara進行測試來製作一個簡單的Rock,paper,scissors遊戲。遊戲對抗計算機對手,隨機選擇岩石,紙張或剪刀。我正在爲網頁結果編寫一個測試。我磕碰對手的反應始終選擇紙讓玩家失去了(因爲他選擇的岩石)從水豚特徵測試中消除隨機性
scenario "Player chooses rock, and the computer chooses paper." do
single_player_sign_in_and_play
click_button('rock')
allow(game).to receive_message_chain(:player2, :weapon) {:paper}
allow(game).to receive(:outcome).and_return("You lose!")
allow(game).to receive(:message).and_return("Your opponent chose #{game.player2.weapon}. #{game.outcome}")
expect(page).to have_content("Your opponent chose paper. You lose!")
末
我想對手總是有:紙作爲武器使玩家失去:該頁面應該有內容:「你的對手選擇了紙,你輸了!」
這還是從對手返回隨機行爲! –
你想實現什麼?這並不明確 – fabersky
我希望對手始終擁有:紙張作爲武器,因此玩家輸了:頁面應該有內容: –