TECHTALK: Test Driven Development (TDD) Restful API dengan Mock Server Postman

Badan Sistem Informasi UII
14 Oct 202218:46

Summary

TLDRThe video script introduces the concept of Test-Driven Development (TDD), a method in application development where tests are written before the actual code, leading to more directed and error-free code. It also covers Facebook FPI, a data exchange method using HTTP protocol, aimed at creating systems with good performance and ease of development. The script further explains the use of Postman as a tool for FPI development, highlighting features like collections, environments, mock servers, and automated tests, demonstrating how these can be utilized to streamline the development process and reduce miscommunication.

Takeaways

  • πŸ˜€ The presenter introduces themselves as a back-end developer from a mission and finance department.
  • πŸ”§ The main topic is Test-Driven Development (TDD), a software development method that combines programming, unit testing, and writing tests before coding.
  • πŸ“ TDD aims to ensure that the developed program meets its intended purpose by writing tests first, which leads to a more focused development process.
  • πŸ”„ The workflow of TDD involves writing test code first, running tests to ensure failure due to the absence of the actual code, then writing the program code to pass the tests, and repeating this cycle.
  • πŸ†š The difference between TDD and traditional development is highlighted, where traditional development writes code first and then tests it, whereas TDD inverts this process.
  • πŸ’‘ Benefits of TDD include continuous testing, better design due to the test-first approach, avoidance of damage from refactoring, and reduced debugging for developers.
  • πŸ› οΈ The script discusses the use of FPI (Fake Payment Integration) with HTTP protocol for developing systems or applications with good performance and fast data transaction processes.
  • 🌐 The process of FPI involves the client sending a request to the server, server authentication, processing the request, and returning a response with the necessary information.
  • πŸ”§ The use of mock servers like Postman's Mock Server is explained for simulating real servers to help developers test and check FPI and its responses.
  • πŸ› οΈ Postman's features for API development are outlined, including collections for organizing requests, environments for storing variables, sample responses, mock servers, test scripts, automated tests, and documentation generation.
  • πŸ“š A demo is provided on how to create a mock API for displaying a list of students using Postman, including setting up a collection, adding requests, creating mock responses, and writing test scripts.

Q & A

  • What does TDD stand for in the context of the script?

    -TDD stands for Test-Driven Development, a software development approach where tests are written before the code, ensuring that the code meets the desired outcomes.

  • What is the primary purpose of Test-Driven Development (TDD) according to the script?

    -The primary purpose of TDD is to make the development process more directed and ensure that the final program meets its intended purpose.

  • How does the script describe the process of TDD?

    -The script describes the TDD process as writing test code first, considering all possible inputs and outputs, running the tests to check for failures, then writing the program code to pass the tests, and repeating the process until all tests are successful.

  • What is the difference between TDD and traditional development methods as mentioned in the script?

    -In traditional development methods, code is written first, followed by testing and fixing errors if they occur. TDD, on the other hand, involves writing tests first and then writing code to pass those tests.

  • What are some benefits of using TDD mentioned in the script?

    -Benefits of using TDD include continuous testing leading to better design, code that is easier to understand, and a reduction in errors due to early detection, resulting in cleaner and less complex code.

  • What does FPI stand for and what is its purpose in the script?

    -FPI stands for Frontend to Backend Interface, a method of data exchange using the HTTP protocol, aimed at creating a system or application with good performance, easy development, and fast data transaction processes.

  • How does the script describe the workflow of FPI?

    -The script describes the FPI workflow as the client sending a request to the server based on FPI documentation, the server authenticating the client, processing the request internally, and finally returning a response to the client with information about the success of the request and any requested data.

  • What is a mock server and how does it relate to FPI as per the script?

    -A mock server is a simulated server used to test and check FPI and its responses. It helps developers in testing without needing the actual server, ensuring that the FPI format is consistent and reducing the chance of miscommunication.

  • What tools or applications are mentioned in the script for using as a mock server?

    -The script mentions tools like Postman, Max Server, and Stop Light as examples of applications that can be used as mock servers for testing FPI.

  • Can you provide an example of a feature in Postman that helps in FPI development as described in the script?

    -One feature mentioned in the script is 'Collection' in Postman, which allows developers to group and organize requests in a way that suits the project or model they are working on.

  • What is the significance of the 'Mock Server' feature in Postman as explained in the script?

    -The 'Mock Server' feature in Postman allows developers to create a simulated server response that can be accessed from the internet, mimicking the actual server response, which aids in the development and testing process without the need for a real server.

Outlines

00:00

😎 Test-Driven Development (TDD) Methodology

This paragraph introduces the concept of Test-Driven Development (TDD), a software development technique that combines programming, unit testing, and refactoring. The speaker, a back-end developer, explains that TDD involves writing tests before the actual code, which helps in creating more directed and error-free code. The process includes defining all possible inputs and outputs, running the tests to initially fail due to the absence of the code, then writing the code to pass the tests, and finally repeating the process until all tests are successful. The benefits of TDD include continuous testing, better design, and avoiding damage during code refactoring, leading to cleaner and less complex code.

05:02

πŸ”Œ Facebook FPI and Its Development Tools

The speaker discusses Facebook FPI, a data exchange method using the HTTP protocol aimed at creating a system or application with good performance, ease of development, and fast data transaction processing. The FPI process involves a client sending a request to the server, server authentication, processing the request, and returning a response. The response includes information about the success of the request and any data requested by the client. The paragraph also introduces the concept of a mock server for testing FPI and mentions various tools like Postman, Max server, and Stoplight that can be used. Postman is highlighted for its features like collections, environments, sample responses, mock servers, script tests, automated tests, and documentation generation.

10:09

πŸ› οΈ Implementing FPI with Postman's Mock Server

This section provides a practical demonstration of how to use Postman to create a mock server for FPI development. The speaker guides through the process of adding a new request, setting up a base URL, and using the mock server to simulate responses. It includes creating a new collection, adding example responses, and writing test scripts in JavaScript to validate the mock server's responses. The demonstration also covers how to save changes and rerun tests to ensure the mock server's responses meet the expected criteria, such as status codes and JSON format.

15:10

πŸ“š Conclusion on the Benefits of Using Mock Servers

The final paragraph concludes by emphasizing the advantages of using mock servers like Postman's for FPI development. These benefits include not needing to prepare a real server for mockups, enabling mobile or frontend developers to start implementing FPI without waiting for backend completion, and minimizing miscommunication regarding FPI format since all developers refer to the same mockup. The speaker apologizes for any shortcomings and thanks the audience, ending the video script with a sign-off in Arabic.

Mindmap

Keywords

πŸ’‘TDD (Test-Driven Development)

TDD is a software development technique where tests are written before the actual code. It is central to the video's theme as it emphasizes the process of writing tests first to ensure that the code written meets the desired outcomes. The script mentions TDD as a method that makes the development process more directed and helps in creating better designs and reducing errors.

πŸ’‘PDB (Test Dragon Development)

PDB, also referred to as Test Dragon Development, seems to be a term used in the script to describe a testing methodology. Although not a standard term in software development, it appears to relate to TDD, where tests are created before writing the code, ensuring that the development is goal-oriented and tests are passed before moving on to the next step.

πŸ’‘FPI (Frontend to Backend Interface)

FPI stands for Frontend to Backend Interface, which is a method of data exchange using the HTTP protocol. The video discusses FPI as a way to create a system or application with good performance that is easy to develop and quick in data transaction processes. The script describes the workflow of FPI, including client-server communication and authentication.

πŸ’‘Postman

Postman is a tool used for API development and is highlighted in the script as a means to facilitate FPI development. It offers features like collections for organizing requests, environments for storing variables, mock servers for simulating real servers, and automated tests. The video provides a demonstration of using Postman to create a mock server and test scripts.

πŸ’‘Mock Server

A mock server is a simulated server used for testing and development purposes. In the context of the video, it is used to mimic the behavior of a real server to help developers test and verify the responses of their FPI without needing the actual server infrastructure.

πŸ’‘Script Testing

Script testing in the video refers to writing scripts, particularly in JavaScript, to automate and validate the responses and behavior of APIs. The script mentions using script testing within Postman to ensure that the API responses meet the expected criteria.

πŸ’‘Environment

In the context of the video, an environment in Postman is a set of variables that can be used and manipulated during the API request process. It helps in managing different configurations for various development stages or scenarios.

πŸ’‘Collection

A collection in Postman is a way to group related API requests, making it easier to organize and manage them according to the project or model being developed. The script demonstrates creating a new collection for a specific FPI development task.

πŸ’‘Documentation

The video mentions the generation of documentation for FPI, which is an important aspect of API development. Documentation provides a detailed description of how to interact with an API, including the available endpoints, request formats, and expected responses.

πŸ’‘Automated Test

Automated tests are scripts that run a series of API requests within a collection automatically. In the video, Postman's automated test feature is used in conjunction with script testing to verify that the API behaves as expected across multiple requests.

πŸ’‘API Endpoint

An API endpoint is a specific location in the API's URL structure that can be called to perform an operation or retrieve data. The script discusses creating and switching endpoints within Postman to test different parts of the FPI.

Highlights

Introduction to Test Driven Development (TDD) as a method used in application development.

TDD combines programming, unit testing creation, and requires writing tests before the actual code.

TDD aims to produce code that meets its intended purpose, making the development process more directed.

Explanation of the TDD process, starting with writing test code, ensuring all possible inputs and outputs are considered.

Running tests to ensure they fail initially due to the absence of the actual code.

Writing the program code to pass the tests and then re-running the tests to check for success.

Iterating the process of writing tests and code until all tests pass, ensuring the code meets expectations.

Difference between TDD and traditional development, where code is written first, then tested and corrected if errors occur.

Benefits of TDD include continuous testing, better design, and code that has already passed tests.

TDD helps avoid damage from refactoring code and allows for easier identification and correction of errors before release.

TDD makes development easier for developers as it reduces the need for repeated debugging.

Introduction to Facebook FPI as a data exchange method using the HTTP protocol for developing high-performance systems.

FPI's working process involves the client sending a request to the server, server authentication, and processing the request.

Use of mock servers like Postman Mock Server for simulating real servers to help developers test and check FPI responses.

Overview of tools and applications for FPI development, such as Postman, Max Server, Stop Light, and others.

Explanation of Postman features like collections, environments, sample responses, mock servers, test scripts, automated tests, and documentation.

Demonstration of creating a mock API for displaying a list of students using Postman.

Use of Postman's mock server feature to create a mock server based on a collection for front-end developers to implement FPI.

Advantages of using Postman's mock server include not needing a real server for mockups, faster FPI implementation, and minimizing miscommunication in FPI format.

Conclusion emphasizing the benefits of using Postman's mock server for streamlined development and communication.

Transcripts

play00:00

[Musik]

play00:13

Oke

play00:16

bismillahirrohmanirohim Assalamualaikum

play00:18

warahmatullahi wabarakatuh

play00:20

sebelumnya Perkenalkan nama saya laluis

play00:24

marhadi Saya dari tempat misi dan

play00:28

keuangan

play00:29

sebagai back and Developer

play00:33

Pada kesempatan kali ini saya akan

play00:36

menyampaikan

play00:37

materi laptop tentang Test Driver

play00:41

development ekskul PPI dengan memaksa

play00:44

server

play00:47

langsung saja Apa itu PDB

play00:51

jadi pdd atau tes Dragon development

play00:56

merupakan salah satu metode yang

play01:00

digunakan dalam pengembangan aplikasi

play01:03

metode ini mengkombinasikan pemrograman

play01:07

pembuatan unit testing dan

play01:11

dalam penerapan metode ini kita akan

play01:14

membuat tes terlebih dahulu sebelum

play01:16

menulis kode program

play01:19

dengan membuat tes sebelum memulai

play01:22

menuliskan kode program diharapkan

play01:24

program yang dihasilkan nanti sesuai

play01:26

dengan tujuan yang ada dicapai dengan

play01:29

kata lain proses development akan lebih

play01:32

terarah

play01:33

selanjutnya cara kerja tdd

play01:37

cara kerja terdiri sendiri dapat melihat

play01:40

seperti pada gambar berikut yang pertama

play01:43

sebelum menulis kode program Tuliskan

play01:46

kode tesnya terlebih dahulu

play01:49

pastikan kita memasukkan semua

play01:52

kemungkinan yang dapat kita pikirkan

play01:54

untuk input dan outputnya kemudian

play01:58

jalankan tesnya dan

play02:01

pastikan ketika menjalankan tes tersebut

play02:04

hasilnya file ini dikarenakan belum ada

play02:08

kode apapun yang kita buat untuk membuat

play02:10

tesnya berhasil selanjutnya Tulis kode

play02:14

program agar hasil tesnya flash atau

play02:18

berhasil kemudian dijalankan tes dan cek

play02:22

Apakah tesnya sudah berhasil jika belum

play02:26

maka perbaiki kembali kode program sudah

play02:30

kita tulis sampai memenuhi ekspektasi

play02:33

dari tes tersebut selanjutnya

play02:41

ulangi proses tersebut dari awal sampai

play02:44

terakhir untuk positif yang lainnya

play02:47

kemudian

play02:50

perbedaan tes gerakan biasa

play02:56

seperti pada gambar

play02:59

untuk slow nya bisa kita lihat bahwa

play03:02

ketika kita

play03:04

mengembangkan aplikasi dengan

play03:07

metode pada umumnya kita akan menuliskan

play03:10

kode programnya terlebih dahulu baru

play03:14

melakukan

play03:15

testing dan memperbaiki kode program

play03:18

tersebut jika terjadi kesalahan

play03:20

Sedangkan untuk diri sendiri merupakan

play03:23

kebalikan dari hal tersebut kemudian

play03:27

kelebihan dan manfaat yang didapatkan

play03:30

dari

play03:32

satu

play03:34

identifikasi ini dikarenakan kita sudah

play03:37

melakukan

play03:39

uji coba terus-menerus secara berulang

play03:43

yang kedua desain yang lebih bagus

play03:48

karena

play03:49

edd adalah metode yang membantu membuat

play03:52

kode lebih mudah dipahami Selain itu

play03:56

kode yang ditulis merupakan kode yang

play03:58

sudah lolos uji coba berdasarkan

play04:00

equipment dari

play04:03

yang ketiga menghindari kerusakan akibat

play04:06

faktor saat melakukan reflektor kode Ada

play04:11

kemungkinan kita akan mengalami masalah

play04:13

atau error dengan sudah kita buat kita

play04:17

bisa memperbaiki air tersebut sebelum

play04:19

rilis karena peringatan akan muncul jika

play04:22

ada kode yang bermasalah ketika kita

play04:24

menjalankan

play04:26

yang keempat mudah bagi developer Hal

play04:30

ini dikarenakan developer tidak perlu

play04:33

melakukan debugging berulang-ulang

play04:35

karena kesalahan kode sudah bisa

play04:37

dikurangi dari awal sehingga kemudian

play04:40

dihasilkan bisa lebih clean dan tidak

play04:42

begitu kompleks tetapi perlu diingat

play04:46

untuk tdd tidak menjanjikan aplikasi

play04:49

atau website yang kita buat dapat lebih

play04:52

cepat terselesaikan karena jadi dia

play04:55

hanya menjanjikan menjanjikan proses

play04:57

development lebih terarah

play05:01

rata-rata dari kita semua dengan

play05:04

sudah tidak asing lagi

play05:06

saya jelaskan sedikit Facebook FPI

play05:10

merupakan metode pertukaran data yang

play05:12

menggunakan protokol http tujuannya

play05:15

adalah menghasilkan suatu sistem atau

play05:18

aplikasi yang memiliki

play05:21

performa yang baik mudah dikembangkan

play05:24

atau

play05:27

dan cepat dalam proses transaksi data

play05:32

kemudian Bagaimana cara kerja

play05:36

FPI cara kerjanya yaitu

play05:39

client mengirimkan permintaan ke server

play05:42

berdasarkan dokumentasi FPI untuk

play05:44

memformat permintaan dalam format yang

play05:47

dipahami oleh server

play05:49

kemudian server mengautentikasi client

play05:53

dan mengkonfirmasi bahwa klien memiliki

play05:57

hak untuk membuat permintaan selanjutnya

play06:00

server menerima permintaan dan memproses

play06:03

secara internal

play06:05

dan yang terakhir server mengembalikan

play06:08

respon kepada client

play06:10

respon berisi informasi yang

play06:13

memberitahu klien jika permintaannya

play06:15

berhasil dan termasuk Informasi apa saja

play06:18

yang diminta klien selanjutnya kita

play06:21

beralih ke server nox server itu sendiri

play06:25

adalah fake server yang digunakan untuk

play06:29

simulasi sebagai server sesungguhnya

play06:32

untuk membantu developer untuk testing

play06:36

dan

play06:37

mengecek FPI beserta respon dari FPI

play06:41

tersebut

play06:42

berikut ada beberapa tool atau aplikasi

play06:44

yang bisa kita gunakan sebagai most

play06:47

server yaitu ada Postman Max server

play06:52

kemudian stop light

play06:55

selanjutnya

play06:58

dan masih banyak lagi tapi Pada

play07:01

kesempatan kali ini saya akan

play07:02

menjelaskan

play07:03

maksud server pada

play07:10

semen Maksudnya teman-teman di sini

play07:12

sudah sering menggunakan Postman Disini

play07:15

saya akan menjelaskan sedikit

play07:17

jadi Postman merupakan tool untuk

play07:20

melakukan proses

play07:23

development FPI yang mana untuk saat ini

play07:26

masih banyak fitur-fitur yang

play07:29

sangat membantu dalam proses festival

play07:32

diantaranya ada collection

play07:37

yaitu

play07:38

pengelompokan request yang bisa disimpan

play07:41

atau diatur dalam bentuk folder

play07:44

memudahkan untuk pengelompokan request

play07:47

sesuai dengan proyek ataupun model yang

play07:50

sedang dikerjakan

play07:53

selanjutnya environment semacam konflik

play07:57

untuk menyimpan atribut dan atribut

play08:00

tersebut dapat digunakan ataupun

play08:03

dimanipulasi dalam proses request

play08:07

kemudian ada sample respon merupakan

play08:11

contoh respon dari FPI yang akan dibuat

play08:15

developer dapat membuat

play08:17

sebelum benar-benar mengimplementasikan

play08:20

ke dalam proyek

play08:22

fitur selanjutnya yaitu novel server

play08:25

dengan fitur ini semoga VPN dibuat

play08:29

menggunakan fitur example Respon yang

play08:32

kemudian dapat diakses dari internet

play08:34

kayaknya mau ke

play08:36

layaknya tersebut sudah

play08:39

diimplementasikan dan dideplay ke server

play08:41

yang sesungguhnya

play08:43

Lalu ada script test fitur ini digunakan

play08:47

untuk melakukan

play08:51

tes sesuai dengan kebutuhan

play08:54

selanjutnya ada automated test

play08:58

fitur ini menjalankan request dalam satu

play09:02

collection secara otomatis

play09:05

penggunaannya biasa digabung dengan

play09:07

Script

play09:09

yang terakhir ada dokumentation yaitu

play09:12

dokumentasi FPI yang dapat di generate

play09:15

otomatis sesuai dengan request yang

play09:18

tersimpan dalam

play09:19

satu collection

play09:25

selanjutnya

play09:26

mungkin Disini saya akan demo singkat

play09:30

untuk membuat mod HPA untuk menampilkan

play09:33

bisa contohnya itu menampilkan daftar

play09:36

mahasiswa

play09:38

langsung saja saya ingin ke Postman

play09:42

terlebih dahulu

play09:44

nah disini

play09:46

jadi pertama kita membuat

play09:49

misalkan collection baru

play09:52

membuat koleksi baru contohnya

play09:56

bunganya misalkan

play10:08

selanjutnya

play10:10

tambahkan request

play10:14

Nah di sini

play10:17

[Musik]

play10:25

[Musik]

play10:32

Nah di sini kita tambahkan

play10:36

request urlnya Oh ya sebelumnya kita

play10:40

perlu menyiapkan apa namanya

play10:45

di sini

play10:46

kita sediakan untuk

play10:49

ada pqrl atau base url dari server kita

play10:53

nanti kemudian base URL di sini

play10:56

merupakan

play11:00

server jadi ketika nanti misalkan

play11:04

Kayaknya sudah selesai membuat

play11:07

endpoint bisa di switch dengan

play11:11

Nah di sini kita

play11:14

coba tambahkan terlebih dahulu

play11:24

kemudian

play11:25

kita tambahkan

play11:30

example di sini

play11:33

Nah jadi example disini merupakan

play11:37

respon yang akan diambil nanti oleh

play11:40

Mouse server kita

play11:45

cara kerjanya itu nanti dari Mouse

play11:49

misalkan dari regresi url-nya

play11:53

slash mahasiswa maka

play11:56

di sini Kita juga mendapatkan

play12:03

selanjutnya

play12:07

pada tab no server di sini kita membuat

play12:11

bonsai terbaru tinggal klik Create new

play12:13

server

play12:14

kemudian gunakan yang select NSS

play12:21

Nah di sini kita memilih

play12:24

collection kita yang sudah kita buat

play12:25

tadi yaitu meng server tadi

play12:28

untuk nama nya

play12:40

langsung saja klik no server

play12:48

nah di bagian refresh nya

play12:51

di sini kita coba tambahkan tesnya

play12:58

untuk tes scriptnya di sini ditulis

play13:01

menggunakan JavaScript

play13:04

kalau untuk lebih detailnya mungkin bisa

play13:06

dicek di postingannya langsung

play13:10

sini Misalkan kita akan membuat Describe

play13:14

untuk mengecek responnya itu

play13:17

dan

play13:21

apa namanya responnya itu harus berupa

play13:25

Jason

play13:37

[Musik]

play13:40

nah kurang lebih syntaxnya seperti ini

play13:46

Coba kita peran

play13:54

untuk

play13:56

wisudanya kita isi terlebih dahulu

play14:03

ini kita copy dulu

play14:14

sedikit

play14:22

Oh ya jangan lupa untuk menyimpan setiap

play14:25

perubahan soalnya nanti

play14:28

dia nggak bisa ke laptop

play14:37

kemudian coba kita rem lagi

play14:47

di sini

play14:50

hasil yang kita dapatkan dari tesnya

play14:53

yaitu untuk tes pertama berhasil karena

play14:56

responnya sudah 200 kemudian

play14:59

[Musik]

play15:00

tes kedua itu gagal karena di sini

play15:05

diminta untuk responnya itu berupa Jason

play15:08

sedangkan

play15:09

di Excel kita kita belum menambahkan

play15:17

Nah di sini kita coba tambahkan

play15:20

respon berupa daftar mahasiswa

play15:41

langsung saja

play15:48

di sini juga kita bisa menambahkan

play15:50

header sesuai kebutuhan

play15:52

di sini saya temukan saja untuknya

play16:06

kemudian kita

play16:09

simpan

play16:12

Sekarang kita akan coba lagi

play16:34

[Musik]

play16:39

kita coba lagi

play16:41

Nah di sini untuk semua tesnya sudah

play16:45

berhasil responnya juga sudah 200

play16:48

Kemudian untuk tes kedua

play16:52

harus dalam bentuk desain sudah sesuai

play16:55

di bodynya sudah kita bisa cek

play16:59

jadi pada

play17:02

sampai dengan tahap ini

play17:05

sudah bisa untuk memulai

play17:08

apa namanya

play17:10

membuatnya dan juga

play17:13

server yang asli sedangkan dari sisi

play17:16

front and itu bisa langsung mencoba

play17:19

untuk mengimplementasi

play17:24

dari ini karena

play17:26

nantinya akan mengacu pada

play17:30

yang sudah kita bikin untuk handphonenya

play17:32

jadi harusnya tidak ada pilihan

play17:36

Nah mungkin itu untuk demo

play17:41

kembali ke

play17:45

untuk kesimpulannya

play17:48

sebenarnya bisa diambil adalah dengan

play17:51

menggunakan

play17:53

fitur Mouse server dari Postman sebagai

play17:55

sarana terjadi ada beberapa keuntungan

play17:59

yang kita dapatkan antara lain tidak

play18:02

perlu menyiapkan server untuk mockup

play18:05

vganya kemudian

play18:07

mobile atau pendek bisa memulai

play18:11

implementasi FPI tanpa menunggu BKN

play18:14

tidak baik ke server

play18:16

dan yang terakhir meminimalkan

play18:18

terjadinya Miss communication

play18:21

format FPI karena pada proses

play18:23

development semua developer akan mengacu

play18:26

pada

play18:27

mockup FPI tersebut

play18:32

Mungkin itu saja yang bisa saya

play18:35

sampaikan kurang lebihnya Mohon maaf

play18:38

terima kasih assalamualaikum

play18:40

warahmatullahi wabarakatuh

play18:43

[Musik]

Rate This
β˜…
β˜…
β˜…
β˜…
β˜…

5.0 / 5 (0 votes)

Related Tags
Test-Driven DevelopmentFPI MethodPostman ToolMock ServerAPI TestingSoftware DesignCode QualityDeveloper GuideWebpage ScriptTechnical Tutorial