'Drags element identified with `source` which is a locator.
Element can be moved on top of another element with `target`
argument.
`target` is a locator of the element where the dragged object is
dropped.
Examples:
| Drag And Drop | elem1 | elem2 | # Move elem1 over elem2. |'

@keyword
def drag_and_drop(self, source, target):

    src_elem = self.find_element(source)
    trg_elem = self.find_element(target)
    action = ActionChains(self.browser)
    action.drag_and_drop(src_elem, trg_elem).perform()
