Latihan 1 dari materi Flaky Tests & Isolasi di Testing — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Perbaiki flaky test. Diberikan fungsi flakyCounter yang memakai Math.random() dan state global. Buat versi deterministik:
createCounter(rng) menerima fungsi RNG sebagai parameter, jadi sumber acaknya disuntikkan dari luarincrement() menambah 1 kalau rng() lebih dari 0.5, dan tidak mengubah apa pun kalau sebaliknyavalue berisi nilai saat inideterministicTest() menjalankan tiga increment dengan RNG yang selalu mengembalikan 0.9, lalu mengembalikan value counternyadeterministicTest() ke console, karena penilaiannya membaca angka itu