This is very easy to reproduce by simply trying doing -S fixture_class.var=val. You will notice that the variable is not set. This is due to the following:
https://github.com/eth-cscs/reframe/blob/f44e37c781da8d4bbc20daf52597458ffb5da377/reframe/frontend/loader.py#L173-L205
Although we set the variables in all the tests in the test registry, this does not include the fixtures, which are actually instantiated just after.