Why not use the eZ http variable naming convention for your form variables? <i>http://ez.no/ezpublish/documentation/development/standards/php#eztoc80797_13</i>
I think this is MixedCaseStyle convention. I would try to change 'test' to 'TestVariable' and try again.
Also if that does not meet your needs you may wish to change 'params' to 'unordered_params' and try again.
The "params" in the module.php definition refers to parameters that are passed in the URL not via a form.
Your definition allows for URLs of the form /modulename/modulego/[ContentNodeID]/[test] This will set the $Params values you require but I'm not sure that this is the easiest way to achieve what you are trying to do.
You are probably better off retrieving the form variables using the eZHTTPTool. class e.g.