Selecting currencies on a form using Selenium
You don't have to recreate the Select instances, define once and reuse:

currency = Select(self.driver.find_element_by_id("currencyid"))
excur = Select(self.driver.find_element_by_id("excur"))

currency.select_by_visible_text("AUD")
excur.select_by_visible_text("AUD")

assert currency.first_selected_option.text == "USD"  # should not be "AUD"?
assert excur.first_selected_option.text == "CAD"  # should not be "AUD"?


If you have more select elements, this approach would not scale well, you can further improve the code and put the logic into a loop, something like:

values = [("currencyid", "AUD"), ("excur", "AUD")]
for id, value in values:
    select = Select(self.driver.find_element_by_id(id))
    select.select_by_visible_text(value)

    assert select.first_selected_option.text == value