diff --git a/core/api/src/test/java/org/onosproject/ui/table/cell/NumberFormatterTest.java b/core/api/src/test/java/org/onosproject/ui/table/cell/NumberFormatterTest.java
index 68ac2ad..f65f7e1 100644
--- a/core/api/src/test/java/org/onosproject/ui/table/cell/NumberFormatterTest.java
+++ b/core/api/src/test/java/org/onosproject/ui/table/cell/NumberFormatterTest.java
@@ -16,9 +16,13 @@
 
 package org.onosproject.ui.table.cell;
 
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
 import org.junit.Test;
 import org.onosproject.ui.table.CellFormatter;
 
+import java.util.Locale;
+
 import static org.junit.Assert.assertEquals;
 
 /**
@@ -30,6 +34,19 @@
     private CellFormatter f5dp = NumberFormatter.TO_5DP;
     private CellFormatter fInt = NumberFormatter.INTEGER;
 
+    private static Locale systemLocale;
+
+    @BeforeClass
+    public static void classSetup() {
+        systemLocale = Locale.getDefault();
+        Locale.setDefault(Locale.US);
+    }
+
+    @AfterClass
+    public static void classTeardown() {
+        Locale.setDefault(systemLocale);
+    }
+
     @Test
     public void defaultNullValue() {
         assertEquals("default null value", "", f5dp.format(null));
