2016-10-26 2 views
3

私は何百ものポリマーテストスイートを持っています。各テストの終わりに、私はDOMにアクセスしてカスタム品質検査をしたいと思います。Webコンポーネントテスター:DOMへのアクセス

wctプラグインの作成はできますか?その場合は、プラグイン内からDOMにどのようにアクセスする必要がありますか?

ありがとうございます!

答えて

2

プラグインは必要ありません。ネイティブDOM API(例:el.querySelector())またはPolymerインスタンスメソッド(例:el.$$()またはel.getEffectiveChildren())を使用して、テストフィクスチャのDOMに既にアクセスできます。私はクローム53の日陰と影のDOMでこれを検証し、56

この例では、すべてのテストの後に実行され、afterEach()にカップルのDOM関連のアサーションを追加します。このafterEachを適用する方法はあり

<test-fixture id="basic"> 
    <template> 
    <my-app></my-app> 
    </template> 
</test-fixture> 

<script> 
    describe('my-app', function() { 
    var el; 

    beforeEach(function() { 
     el = fixture('basic'); 
    }); 

    afterEach(function() { 
     expect(el.$$('h2').textContent).to.have.string('Hello'); 
     expect(el.querySelectorAll('*')).to.have.lengthOf(2); 
    }); 

    it('instantiating the el works', function() { 
     expect(el.is).to.equal('my-app'); 
    }); 
    }); 
</script> 
+0

すべての私のテストスイートにグローバルに?私には何百というものがあります。手動で調整するのは効率的ではありません。 – x74x61

+1

'afterEach()'を持つ 'describe()'の周りにラッパーを追加し、テストファイルのrefsをラッパーで 'describe()'に置き換えることができます。決定的な答えを得るために[tag:mocha]の新しい質問としてそれを尋ねるべきです。 – tony19

関連する問題