2017-06-15 9 views
2

Jestを使用して、角度1.xディレクティブのスナップショットテストを行いたいと思います。 私はすでにjestで動作するテスト環境を持っていますが、私の指示/コンポーネントをどのようにスナップショットでテストできるかはわかりません。Jestを使用したAngular 1.xでのスナップショットテスト

この例で使用されているレンダラーオブジェクト(反応固有のオブジェクトのようです)http://facebook.github.io/jest/docs/en/snapshot-testing.html#contentを使用することはできませんが、私の指示をシリアル化するために.toJSON() /コンポーネント。

これはJest + Angular 1.xで見つかった唯一のリンクです。 https://medium.com/aya-experience/testing-an-angularjs-app-with-jest-3029a613251となり、スナップショットテストに関する回答が見つかりません。事前に

おかげで、

フェデリコ

+0

はこれについて何かをお知りましたか?私も興味があります –

+0

Tobias、悲しいことに答えは無く、自分で新しい答えを見つけ出す時間がありません –

答えて

0

それは動作します。

test.js

const angular = require('angular'); 
require('angular-mocks'); 

describe('Renderer',() => { 
    let element; 
    let scope; 

    beforeEach(
    angular.mock.inject(($rootScope, $compile) => { 
     scope = $rootScope.$new(); 
     element = $compile(
     '<div><label ng-show="label.show">1</label><label ng-hide="label.show">2</label></div>' 
    )(scope); 
     scope.$digest(); 
    }) 
); 

    it('should render the element',() => { 
    expect(element).toBeDefined(); 
    expect(element[0]).toMatchSnapshot(); 
    }); 
}); 

スナップショット

exports[`Renderer should render the element 1`] = ` 
<div 
    class="ng-scope" 
> 
    <label 
    class="ng-hide" 
    ng-show="label.show" 
    > 
    1 
    </label> 
    <label 
    ng-hide="label.show" 
    > 
    2 
    </label> 
</div> 
`; 
関連する問題