Compare commits

...

3 Commits

Author SHA1 Message Date
SKILLISSUE1
1e086ea33e UTS 2025-11-07 20:38:13 +07:00
SKILLISSUE1
6dfdf3951e UTS 2025-11-07 20:32:33 +07:00
SKILLISSUE1
b1cda446cc UTS 2025-11-07 20:31:18 +07:00
3 changed files with 68 additions and 1 deletions

View File

@ -11,7 +11,10 @@ Saya meminta bantuan ChatGPT dan DeepSeek untuk memberikan saran tampilan aplika
3. Mengubah Icon Aplikasi (APK)
Saya mengganti icon aplikasi melalui fitur Image Asset di Android Studio dengan icon baru sesuai arahan dari ChatGPT.
4. Review dan Uji Coba
4. Membuat Unit Test
Bagian Unit Test dikembangkan menggunakan Local Unit Testing dengan JUnit, di mana kerangka awal dan skenario uji coba sebagian dibantu dan disarankan oleh Gemini.
5. Review dan Uji Coba
Setelah perubahan selesai, saya menjalankan aplikasi untuk memastikan tampilan dan icon sudah berubah dengan baik.
Petunjuk lebih detil dapat dibaca di

View File

@ -82,4 +82,5 @@ dependencies {
androidTestImplementation("androidx.test.ext:junit:1.2.1")
debugImplementation("androidx.compose.ui:ui-test-manifest")
}

View File

@ -0,0 +1,63 @@
package com.example.tiptime
import org.junit.Assert.assertEquals
import org.junit.Test
class BMICalculatorTest {
// Test untuk perhitungan BMI dengan unit Metric
@Test
fun calculateBMI_metricUnits_correctCalculation() {
val result = calculateBMI(170.0, 65.0, false)
assertEquals("22.5", result)
}
// Test untuk perhitungan BMI dengan unit USC (Imperial)
@Test
fun calculateBMI_uscUnits_correctCalculation() {
val result = calculateBMI(68.0, 150.0, true)
// Rumus: 703 * (150 / (68^2)) = 22.8
assertEquals("22.8", result)
}
// Test jika input tinggi atau berat = 0 → hasil harus "0.0"
@Test
fun calculateBMI_zeroInput_returnsZero() {
val result = calculateBMI(0.0, 0.0, false)
assertEquals("0.0", result)
}
// Test kategori BMI untuk underweight
@Test
fun calculateBMICategory_underweight_returnsUnderweight() {
val result = calculateBMICategory("17.5")
assertEquals("Underweight", result)
}
// Test kategori BMI untuk normal weight
@Test
fun calculateBMICategory_normal_returnsNormal() {
val result = calculateBMICategory("22.0")
assertEquals("Normal weight", result)
}
// Test kategori BMI untuk overweight
@Test
fun calculateBMICategory_overweight_returnsOverweight() {
val result = calculateBMICategory("27.0")
assertEquals("Overweight", result)
}
// Test kategori BMI untuk obese
@Test
fun calculateBMICategory_obese_returnsObese() {
val result = calculateBMICategory("32.0")
assertEquals("Obese", result)
}
// Test input tidak valid (string bukan angka)
@Test
fun calculateBMICategory_invalidInput_returnsTidakDiketahui() {
val result = calculateBMICategory("abc")
assertEquals("Underweight", result) // default 0.0 masuk ke underweight
}
}