Настройка тестов QUnit на AJAX звонков - PullRequest
1 голос
/ 08 мая 2020

Я пытаюсь использовать Q-Unit Testing для своего кода. Я хотел бы провести несколько тестов с моими AJAX запросами, чтобы убедиться, что они работают нормально и возвращают то, что должны.

Могу ли я получить руководство по двум приведенным ниже вызовам ajax.

Первый AJAX savePgID() по существу принимает 2 числа, а затем переходит на страницу pagaAJAX.php, где выполняется простой запрос MySQL INSERT для вставки этих 2 чисел в БД.

Второй вызов AJAX getModuleData() снова переходит к сценарию PHP, в котором выполняется запрос SELECT, который GETS данные из базы данных, а AJAX просто подталкивает содержимое к определенным div.

Мои 2 AJAX звонки внутри скрипта. js:

function savePgID(moduleID, pageID){
    $.ajax({  
        url: "pageAJAX.php",  
        method: "POST",   
        data: {moduleID:moduleID, pageID:pageID},
        dataType: 'json', //ajax to expect JSON data type
      });
  }

function getModuleData(moduleID, pageID){
  console.log
  console.log(moduleID);
  console.log(pageID);
  $.ajax({  
      url: "moduleAJAX.php",  
      method: "POST",   
      data: { moduleID:moduleID, pageID:pageID },
      dataType: 'json', //ajax to expect JSON data type
      success: function(data){  
        //console.log(data);
            $('#result').html(data.result);    
            $('#modContent').html(data.modContent);  
            $('#modTitle').html(data.modTitle); 
            $('#modID').html(data.modID);
            $('#pgID').html(data.pgID);
            $('#modProgress').html("Page " + data.pgID); // For footer of modal overlay
      }  
  });
}

мой тест. html страница:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Q-Unit Tests</title>
    <link rel="stylesheet" href="https://code.jquery.com/qunit/qunit-2.10.0.css">


</head>
<body>

    <div id="qunit"></div>
    <div id="qunit-fixture"></div>
    <script src="https://code.jquery.com/qunit/qunit-2.10.0.js" integrity="sha256-X1fQXHSYGxa4V2bqkEAQW0DQGSxJrKveasahr959o28=" crossorigin="anonymous"></script>

    <script src="script.js"></script>

</body>
</html>
...