test abstract