Enhetstesting i Loggfila

stemmer
36

Jeg vet, Loggfila er en dag gammel. Men jeg er nysgjerrig på om er her somekind rammeverk for enhetstest eller måten å skrive og kjøre enhetstester for typescript?

Loggfila kan kompileres til Javascript, og jeg kan skrive test for at Javascript, men det er ikke hva jeg vil.

Publisert på 02/10/2012 klokken 18:18
kilden bruker
På andre språk...                            


3 svar

stemmer
20

Loggfila er ikke en kjøretids språk. For å utføre din script-kode må du først kompilere den til Javascript; Tilsvarende gjelder for testing av den. Testene kan være i Loggfila også, kompilere både i Javascript og bruke din favoritt test rammeverk for å utføre testene.

Svarte 02/10/2012 kl. 18:32
kilden bruker

stemmer
16

Du kan skrive enhet tester i script eller Javascript, ved hjelp av noen av de eksisterende Javascript enhetstesting rammer.

Veldig snart, jeg forestille eksisterende rammer vil få Loggfila omgivelsesdefinisjonsfiler (oppdatering - de har: http://definitelytyped.org/ ), som vil gjøre dem statisk skrevet så langt Loggfila er bekymret. I mellomtiden kan det være nødvendig å lese opp på Ambient Erklæringer og legge til noen av dine egne ved starten av testene.

Alternativt kan du bruke tsUnit Loggfila Unit Testing Framework , som er en enhet testing rammeverk skrevet i maskinskrevet manuskript - så det spiller fint med Loggfila (og kan brukes i Javascript for).

Svarte 02/10/2012 kl. 21:31
kilden bruker

stemmer
0

Synes det er en annen test løper / rammeverk som kalles Intern. https://theintern.github.io/

Her er en artikkel som forklarer hvordan du skal bruke det kombinert med typescript: https://www.sitepen.com/blog/2015/03/24/testing-typescript-with-intern/

Ser ganske lovende ut når du bruker typescript, og du er på utkikk etter en enhet-testing oppsett som støtter kilde kart.

Eksempel test:

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.');
    }
});
Svarte 30/09/2015 kl. 16:50
kilden bruker

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