Ho sempre usato Jasmine per i miei test unitari, ma recentemente ho iniziato a usare Istanbul per darmi rapporti sulla copertura del codice. Voglio dire, ho la sostanza di ciò che stanno cercando di dirmi, ma io non so davvero che cosa ciascuno di tali percentuali rappresentano (Stmts, Rami, funcs, …
Sto testando un componente React con rendering superficiale Jasmine Enzyme. Semplificato qui ai fini di questa domanda ... function MyOuterComponent() { return ( <div> ... <MyInnerComponent title="Hello" /> ... <MyInnerComponent title="Good-bye" /> ... </div> ) } MyOuterComponentha 2 istanze di MyInnerComponente vorrei testare gli oggetti di scena su ciascuna di …
Ho una direttiva AngularJS che ha un file templateUrl. Sto provando a testarlo con Jasmine. Il mio JavaScript Jasmine è simile al seguente, secondo la raccomandazione di questo : describe('module: my.module', function () { beforeEach(module('my.module')); describe('my-directive directive', function () { var scope, $compile; beforeEach(inject(function (_$rootScope_, _$compile_, $injector) { scope = …
Jasmine spyOnè utile per modificare il comportamento di un metodo, ma esiste un modo per modificare una proprietà di valore (piuttosto che un metodo) per un oggetto? il codice potrebbe essere come di seguito: spyOn(myObj, 'valueA').andReturn(1); expect(myObj.valueA).toBe(1);
Sto cercando di utilizzare Jasmine per scrivere alcune specifiche BDD per richieste jQuery AJAX di base. Attualmente sto usando Jasmine in modalità standalone (cioè attraverso SpecRunner.html). Ho configurato SpecRunner per caricare jquery e altri file .js. Qualche idea sul perché quanto segue non funziona? has_returned non diventa vero, anche se …
Ho scritto un servizio AngularJS e vorrei testarlo. angular.module('myServiceProvider', ['fooServiceProvider', 'barServiceProvider']). factory('myService', function ($http, fooService, barService) { this.something = function() { // Do something with the injected services }; return this; }); Il mio file app.js ha questi registrati: angular .module('myApp', ['fooServiceProvider','barServiceProvider','myServiceProvider'] ) Posso testare che DI funziona come tale: …
Chiuso . Questa domanda è basata sull'opinione . Attualmente non accetta risposte. Vuoi migliorare questa domanda? Aggiorna la domanda in modo che possa essere risolta con fatti e citazioni modificando questo post . Chiuso 7 anni fa . Migliora questa domanda Quali sono le principali differenze tra questi due framework …
(C'è una domanda correlata qui: il test Jasmine non vede il modulo AngularJS ) Voglio solo testare un servizio senza avviare Angular. Ho guardato alcuni esempi e il tutorial ma non sto andando da nessuna parte. Ho solo tre file: myService.js: dove definisco un servizio AngularJS test_myService.js: dove definisco un …
Diciamo che sto spiando un metodo come questo: spyOn(util, "foo").andReturn(true); La funzione sotto test chiama util.foopiù volte. È possibile che la spia ritorni truela prima volta che viene chiamata, ma che ritorni falsela seconda volta? O c'è un modo diverso per farlo?
Con Jasmine c'è un modo per verificare se 2 array contengono gli stessi elementi, ma non sono necessariamente nello stesso ordine? cioè array1 = [1,2,3]; array2 = [3,2,1]; expect(array1).toEqualIgnoreOrder(array2);//should be true
Voglio confermare che un valore è un decimale (o 0), quindi il numero deve essere maggiore o uguale a zero e minore di 1. describe('percent',function(){ it('should be a decimal', function() { var percent = insights.percent; expect(percent).toBeGreaterThan(0); expect(percent).toBeLessThan(1); }); }); Come imito "> = 0"?
Come posso far passare questo test senza ricorrere a blocchi run / waitsFor? it("cannot change timeout", function(done) { request("http://localhost:3000/hello", function(error, response, body){ expect(body).toEqual("hello world"); done(); }); });
Jasmine ha matcher incorporati toBee toEqual. Se ho un oggetto come questo: function Money(amount, currency){ this.amount = amount; this.currency = currency; this.sum = function (money){ return new Money(200, "USD"); } } e prova a confrontare new Money(200, "USD")e il risultato della somma, questi abbinamenti incorporati non funzioneranno come previsto. Sono …
Come configuro Jasmine nell'ambiente Rails 6 (dove Webpack sostituisce la pipeline delle risorse per Javascript) in modo da poter testare i moduli Javascript che ho scritto per la mia app? Ho installato la gemma di gelsomino, eseguito rails generate jasmine:installe modificato jasmine.ymlper indicare la posizione della mia sorgente Javascript e …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.