def serializeBenchmark(iterations, serializeType, data):
    fn = serializeFunctions[serializeType]
    result = []
    print("[{}] Start serialize bechmark".format(serializeType))
    for i in progressbar.progressbar(range(iterations)):
        start = time()
        serializedData = fn(data)
        result.append(time() - start)

    Result.addSerializeBenchmark(serializeType, result, len(serializedData))

    flags = "w"
    if type(serializedData) == bytes:
        flags = "wb"
    with open(
            os.path.join(Result.RESULTS_DIR,
                         "serialized-{}".format(serializeType)),
            flags) as fstream:
        fstream.write(serializedData)

    return serializedData