def element_collection(collection_name, *find_args)
      build collection_name, *find_args do
        define_method collection_name.to_s do |*runtime_args, &element_block|
          self.class.raise_if_block(self, collection_name.to_s, !element_block.nil?)
          page.all(*find_args)
        end
      end
    end
def element_collection(collection_name, *find_args)
      build collection_name, *find_args do
        define_method collection_name.to_s do |*runtime_args, &element_block|
          self.class.raise_if_block(self, collection_name.to_s, !element_block.nil?)
          page.all(*find_args)
        end
      end
    end
why define this method?
 if we use the elements method directly, it will be conflicted with RSpec.Mather.BuiltIn.All.elements.
 I have not found one good method to solve the confliction.