ユーザのパスワードのロックと凍結情報にアクセスしたいときのために、UserLoginオブジェクトが用意されています。パスワードのロック情報は『IsPasswordLocked』項目、凍結情報は『IsFrozen』項目が持っています。
システム情報なのでテストクラス内で既存の情報にアクセスするのも可能ですが、ApexでUserLoginをUpdateすることは不可だったと思うので、環境依存させないように気をつける必要がありそうです。
UserLoginオブジェクトの凍結はSOAP APIで更新することが可能になっています。以前試した時の記事がこちらです。
UserLoginオブジェクトをつかったサンプルコードはこちらです。