diff --git a/tests/micropython/heapalloc_iter.py b/tests/micropython/heapalloc_iter.py
index e1ed3daa3b133416d202a8d7dff15e6cbee912d4..45d3519e45f6fbe9763d88d8890c16d34ab6ad02 100644
--- a/tests/micropython/heapalloc_iter.py
+++ b/tests/micropython/heapalloc_iter.py
@@ -1,10 +1,15 @@
 # test that iterating doesn't use the heap
+try:
+    import array
+except ImportError:
+    import sys
+    print("SKIP")
+    sys.exit()
 
 try:
     from micropython import heap_lock, heap_unlock
 except (ImportError, AttributeError):
     heap_lock = heap_unlock = lambda:0
-import array
 
 def do_iter(l):
     for i in l:
@@ -20,7 +25,7 @@ ar = array.array('H', (123, 456))
 t = (1, 2, 3)
 l = [1, 2]
 d = {1:2}
-s = {1}
+s = set((1,))
 fs = frozenset((1,))
 g1 = (100 + x for x in range(2))
 g2 = gen_func()