distinguish value tests and attribute tests