我是nodejs的新手,我遵循文檔中的所有步驟。首先我研究並測試節點的斷言函數,我只想知道使用斷言的目的是什麼?如果沒有錯誤沒有輸出,但如果你有一個錯誤,有一個輸出說AssertError等在NodeJS中斷言的目的
我想知道什麼時候使用斷言和目的是什麼?
我是nodejs的新手,我遵循文檔中的所有步驟。首先我研究並測試節點的斷言函數,我只想知道使用斷言的目的是什麼?如果沒有錯誤沒有輸出,但如果你有一個錯誤,有一個輸出說AssertError等在NodeJS中斷言的目的
我想知道什麼時候使用斷言和目的是什麼?
在任何編程語言中,錯誤都是一個問題。無論是人爲錯誤還是糟糕的設計。 node.js中的assert模塊用於測試函數的行爲並減少「buggy」代碼的創建,這也促進了設計思維。
在大多數情況下,斷言用於單元測試。這需要一個代碼單元,它是一個函數,方法等,並對其執行多個測試。這些測試函數產生的值(實際)與我們期望函數提供的值。
斷言的一個例子:
"use strict";
//Run the code and change the values of x and y (to equal 42) to test the assert module.
const x = 18;
const y = 20;
//We have to import our assert module
var assert = require("assert");
//Calculates the anser to life (42)
var life = function(a,b){
return a + b;
};
//Overwrite the variable of result to equal the return.
result = life(x,y);
//Change the comments below to see the difference between the two values
assert.deepEqual(result, 42);
//assert.fail(result, 42, "", '<');
從技術角度來看,他們開始編寫代碼之前,開發人員應該寫他們的測試。這是一種自頂向下的開發策略,它允許開發人員瞭解軟件的功能需求。因此,在編寫斷言時,您可以獲得所需的參數以及期望的結果。從而使邏輯成爲唯一的障礙。
Assert用於爲您的應用程序編寫測試套件。這樣,您可以輕鬆測試應用程序,以查看它們是否按預期工作,並在開發階段的早期捕獲錯誤。
我不認爲它與其他所有語言都有區別。 https://en.wikipedia.org/wiki/Assertion_(software_development) – Cristy
當所有其他都失敗時,請參閱文檔https://nodejs.org/api/assert.html – Stavm