Я написал эту функцию, которая рассчитывает платеж по ипотеке на основе стоимости дома, первоначального взноса, срока ипотеки (срока кредита) и годовой процентной ставки. Я хочу проверить функцию calculatePayment
, чтобы убедиться, что вывод правильный. Я выбрал Jest, но любые другие инструменты тестирования работают. Как мне написать тест для этой функции?
function calculatePayment() {
var houseCost = parseFloat(document.getElementById("houseCost").value);
var downPayment = parseFloat(document.getElementById("downPayment").value);
var termOfLoan = parseFloat(document.getElementById("termOfLoan").value);
var annualInterestRate = parseFloat(document.getElementById("annualInterestRate").value);
var principal = houseCost - downPayment;
var percentageRate = annualInterestRate / 1200;
var lengthOfLoan = 12 * termOfLoan;
var monthlyPayment = (principal * percentageRate) / (1 - (Math.pow((1 + percentageRate) , lengthOfLoan * -1)));
monthlyPayment = monthlyPayment.toFixed(2);
document.getElementById("payment").value = monthlyPayment;
};
Кроме того, если есть лучший способ рефакторинга, я был бы признателен за это