2017-07-03 1 views
0

Ich versuche hier eine AssertTesting-Funktion zu erstellen, die tatsächliche und erwartete Werte mit strikter Gleichheit (nicht Typcasting) vergleicht.assertTesting-Funktion Erfolg oder Fehlertest

Als Beispiel ist hier ein Erfolgsfall:

function multiplyByTwo(n) { 
    return n * 2; 
} 
var output = multiplyByTwo(2); // returns 4 
assertTesting(output, 4, 'it doubles 2 to 4'); 
// console output: 
// passed 

Hier ist ein ein failed: meine Codes

function multiplyByTwo(n) { 
    return (n * 2) + 1; // an incorrect implementation 
} 
var output = multiplyByTwo(2); // returns 5 
assertTesting(output, 4, 'it doubles 2 to 4'); 
// console output: 
// FAILED [it doubles 2 to 4] Expected "4", but got "5" 

Hier ist so weit:

var output; 

function multiplyByTwo(n) { 
    output = n * 2; 
    return output; 
} 

function assertTesting (actual, expected, testName) { 
    if(actual === ouput && expected === testName){ 
    return "SUCCESS" + [testname] + "Expected" + expected + "," "but got" + actual; 
    } 
} 

Jede Idee, wie kann ich die genaue Ausgabe, die ich brauche? Bitte helfen Sie.

Antwort

1

Sollte so etwas wie dieses, ich denke:

function assertEqual(actual, expected, testName) { 
    if(actual !== expected){ 
    console.error("FAIL [" + testname + "] Expected \"" + expected + ", \" but got \"" + actual + "\""); 
    } else { 
    console.info("SUCCESS [" + testname + "]"); 
    } 
} 
+0

wie über den Erfolg? wie wird es dann gehen? –

+0

Was wollen Sie im Erfolg? "bestanden"? – dloeda

+0

korrekt. Die bestandene. –

Verwandte Themen