Unittesten schrijfmachine

stemmen
36

Ik weet het, typoscript is één dag oud. Maar ik `m benieuwd of is hier somekind unit test framework of de manier hoe te schrijven en uit te voeren unit tests voor typoscript?

Typescript kunnen worden samengesteld om JavaScript en ik kan test voor dat JavaScript schrijven, maar het is niet wat ik wil.

De vraag is gesteld op 02/10/2012 om 19:18
bron van user
In andere talen...                            


3 antwoorden

stemmen
20

Typoscript is geen runtime taal. Om uw Typescript code uit te voeren moet u eerst om het te compileren moet JavaScript; Hetzelfde geldt voor testen. Uw tests kunnen worden met de schrijfmachine ook, stellen zowel in JavaScript en gebruik uw favoriete toetsingskader om de tests uit te voeren.

antwoordde op 02/10/2012 om 19:32
bron van user

stemmen
16

U kunt uw unit tests met de schrijfmachine of JavaScript te schrijven, met behulp van een van de bestaande JavaScript-unit testing frameworks.

Zeer binnenkort, stel ik me de bestaande kaders zal typoscript ambient definition-bestanden te krijgen (update - ze hebben: http://definitelytyped.org/ ), die zal ze statisch zover typoscript betreft getypt. In de tussentijd kan het nodig zijn om te lezen over Ambient verklaringen en voeg een paar van je eigen aan het begin van de tests.

Als alternatief kunt u gebruik maken van tsUnit typoscript Unit Toetsingskader , dat is een eenheid toetsingskader geschreven met de schrijfmachine - dus het speelt leuk met typoscript (en kan worden gebruikt in JavaScript ook).

antwoordde op 02/10/2012 om 22:31
bron van user

stemmen
0

Lijkt erop dat er nog een test loper / framework genaamd Intern. https://theintern.github.io/

Hier is een artikel uit te leggen hoe het te gebruiken in combinatie met getypte: https://www.sitepen.com/blog/2015/03/24/testing-typescript-with-intern/

Ziet er vrij veelbelovend wanneer u typoscript en u op zoek bent naar een unit-meetopstelling die bron kaarten ondersteunt.

Voorbeeld proef:

import registerSuite = require('intern!object');
import assert = require('intern/chai!assert');
// Assume that we now have a version of our model in TypeScript:
import SimpleTodoModel = require('todo/model/SimpleTodoModel');

registerSuite({
    name: 'SimpleTodoModel',
    // Assume we have a promises interface defined
    'default data'() {
        var emptyModel = new SimpleTodoModel(),
            id:string = emptyModel.get('id'),
            length:number = emptyModel.get('todos').length,
            incomplete:number = emptyModel.get('incomplete'),
            complete:number = emptyModel.get('complete');
        assert.strictEqual(id, 'todos-dojo',
                    'Id should default to "todos-dojo"');
        assert.strictEqual(length, 0,
                    'Todos array should default to an empty array.');
        assert.strictEqual(incomplete, 0,
                    'Incomplete count should default to 0.');
        assert.strictEqual(complete, 0,
                    'Incomplete count should default to 0.');
    }
});
antwoordde op 30/09/2015 om 16:50
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more