test case opti
make its construct function private
Add ForwardView support