Instead of calling log4j directly, use a protected method in your class.
Something like:
protected void log(String message, Level level)
{
    //delegates to log4j
}
Then create a subclass of the class under test that oevrrides this method, so that you can verify it is being called as expected.
class MyTest extends 
{
    boolean somethingLogged = false;
    protected void log(String message, Level level)
    {
        somethingLogged = true;
    }
}
and then assert based on somethingLogged. You can add conditional logic in the overriding method t test based on expected message/level.
You could go further and record all the invocations, and then search through the logged messages, or check they were logged in the right order etc...