In this paper, we provide some necessary and sufficient conditions to check when a (semi-)perfect graph is well-covered. We show that the checking process of these conditions can be achieved in a polynomial time. Since the comparability graph of a simplicial complex is a perfect graph, our result carries over to simplicial complexes.