Unittesting géppel

szavazat
36

Tudom, géppel egy napos. De I`m kíváncsi, ha van somekind egység teszt keret vagy módja, hogyan kell írni és futtatni egység vizsgálatok géppel?

Géppel lehet összeállítani, hogy a JavaScript és tudok írni teszt, hogy a JavaScript, de ez a baj nem az, amit akarok.

A kérdést 02/10/2012 19:18
a forrás felhasználó
Más nyelveken...                            


3 válasz

szavazat
20

Géppel nem egy futásidejű nyelvet. Végrehajtani a géppel kódot akkor először meg kell fordítani, hogy a JavaScript; Ugyanez vonatkozik a tesztelés. A tesztek géppel is, fordítsd mind a JavaScript, és használja a kedvenc vizsgálati keretet végrehajtja a teszteket.

Válaszolt 02/10/2012 19:32
a forrás felhasználó

szavazat
16

Megírhatjuk egység vizsgálatok géppel vagy JavaScript segítségével bármely meglévő JavaScript egység tesztelése keretek között.

Nagyon hamar, gondolom a meglévő keretek kap géppel környezeti fájlokat (frissítés - ezek: http://definitelytyped.org/ ), amely lehetővé tenné számukra statikusan típusos amennyire géppel van szó. Addig, akkor lehet, hogy olvassa fel a környezeti nyilatkozatok és adjunk hozzá néhány saját elején a teszteket.

Alternatívaként használhatja tsUnit géppel Unit Testing Framework , ami egy egység tesztelése keretet írt géppel - így játszik szép a géppel (és fel lehet használni a JavaScript is).

Válaszolt 02/10/2012 22:31
a forrás felhasználó

szavazat
0

Úgy tűnik, van egy másik teszt futó / elnevezésű keret Intern. https://theintern.github.io/

Itt van egy cikk arról, hogyan kell használni kombinált géppel: https://www.sitepen.com/blog/2015/03/24/testing-typescript-with-intern/

Úgy néz ki elég ígéretes, ha használja géppel, és keres egy unit-próbafolyamatnak, amely támogatja a forrás térképeket.

Példa teszt:

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.');
    }
});
Válaszolt 30/09/2015 16:50
a forrás felhasználó

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