I am new at selenium testing and facing issue in dynamic page. - the page is a html form but there is no fixed inputypes like it can have input box, radio buttons, like, unlike, combo selections, and multi selections. - depend on the selection of input it may create new input types
Use Xpath Axes.
For dynamic locators (Id/name/others), find the pattern of properties created of dynamic objects and then use Xpath Axes to locate based on some stable & static locator in the Dom hierarchy based on it's relationship(Parent, child or sibling) with the dynamic object.
The general stratgey is to use implicit wait, or as I prefer top call them 'polling waits'. For example in Rusby-rspec-selenium these have been incorporated into the capybara gem which sites between rspec and selenium providing a DSL to the selenium interface.
Basically you keep checking the desired output over and over for a given amount of time before declaring element not found. This help address the asynchronous nature of the web by not depending on that nature.
I assume that your form does actually have deterministic paths and subsequent form elements don't just appear 'at random' so I assume you can figure out some fixed workflows to automate.