2016-08-08 10 views
1

私はアイコンをクリックすると状態が変化し、次にアイコンの代わりに入力を行う反応コンポーネントがあります。反応コンポーネント+ capyparaでクリックしないでください

私のテストでそれをシミュレートしようとすると、capybaraを使用してもコンポーネントは変更されません。

カピバラのためにコンポーネントでクリックが機能しない可能性はありますか?それは反応成分なので、うまくいきませんか?

コンポーネント:

render() { 
    return (
    <div> 
     { this.state.editable ? this.renderEditableComponent() : this.renderNotEditableComponent() } 
    </div> 
) } 

    renderEditableComponent() { 
    return (
    <EditableDeliverLimit 
     value={ this.state.value } 
     handleClick={ this.handleClick.bind(this) } /> 
) } 

    renderNotEditableComponent() { 
    return (
     <NotEditableDeliverLimit 
     value={ this.state.value } 
     handleClick={ this.handleClick.bind(this) } /> 
) } 

テスト:

Then "should successfuly change deliver limit" do 
    wait_for_selector_appearance("##{ad_table_row_id(@ad)} .ad-table-row-deliver-limit span") 
    find("##{ad_table_row_id(@ad)} .ad-table-row-deliver-limit span").click 
    wait_for_selector_disappearance("##{ad_table_row_id(@ad)} .ad-table-row-deliver-limit span") 
end 
+0

コードはカピバラの外で動作しますか?あなたのコードの一部を共有して問題を解決することができますか? – Justin

+0

はい!私がテストの外でテストすると、すべて正常に動作します。私はいくつかのコードを置くために私の質問を編集します。 – Marina

+0

カピバラではどのようなドライバを使用していますか? –

答えて

0

PhantomJSとQt WebKitのは、使用しているのバージョンが古いですして反応により必要とされるFunction.prototype.bindをサポートしていません。 PhantomJS 2.1.1+にアップグレードし、Qtを使用してcapybara-WebKitを再構築してください。

+0

qt5のインストール後、qtWebkitが削除されました。私に何ができる? – Marina

+0

@マリナをインストールしました5.6ではありません5.5.1 –

+0

qt55をインストールしてcapybara-webkitを再構築してもまだ動作しませんでした – Marina

関連する問題