refine tests; add performance tests