3

分度器を使い始めて、最初にやろうとしたことは、ジャスミンの代わりにモカとチャイを使うことです. それが良いアイデアだったかどうかは今となってはわかりませんが。

まず、すべてのスペック ファイルから Chai にアクセスできるようにする必要がありました。毎回インポートする必要はありません。protractor.conf ファイルで実行できることがわかりました。

  onPrepare: ->
      global.chai = require 'chai'
      chai.use require 'chai-string'
      chai.use require 'chai-as-promised'
      global.expect = chai.expect

現在、次のような仕様になっています。

  it "when clicked should sort ",->
      headerColumns.get(0).click()
      firstCellText = $$(".first-cell").getText()
      secondCellText = $$(".second-cell").getText()

      # this won't work
      expect(firstCellText).eventually.be.above(secondCellText)             

それを機能させるために私ができること:

    # now this works
    $$(".second-cell").getText().then (secondCellText)->
        expect(firstCellText).eventually.be.above(secondCellText)             

しかし、それは醜いです。私はいつも何かを包み込みたくありません.then。もっといい方法があればいいのに(?)

4

3 に答える 3

2

私は同じ問題を抱えていました。私にとっての問題は、Protractor config.js を介して mocha に長いタイムアウトを追加することでした。

これは、実際のブラウザーが対話しているため、分度器テストがスーパーテストなどの他のモジュールに比べてかなり長い時間がかかるためです。

追加した

  mochaOpts: {
   timeout: 5000
  }

分度器の設定に追加し、テストに合格しました。

于 2015-03-13T21:39:02.820 に答える