title: How to use User Keyword Arguments with default values in RobotFramework
body: <p>Can someone explain me how to use default values for optional keyword arguments in connection with data-driven testcases?</p>
  
  <p>As you can see in my example not all default values are used in some cases:</p>
  
  <pre><code>*** Test Cases ***
  | testArgs | [Template] | doSomething
  | | 111 : 222 : 333 : 444
  | | xxx : 222 : 333 : 444 | xxx
  | | 111 : xxx : 333 : 444 | | xxx
  | | 111 : xxx : 333 : 444 | ${EMPTY} | xxx
  | | None : xxx : 333 : 444 | ${None} | xxx
  | | None : xxx : 333 : 444 | ${null} | xxx
  | | 111 : 222 : xxx : 444  | | | xxx
  
  *** Keywords ***
  | doSomething
  | | [Arguments] | ${expected} | ${arg1}=111 | ${arg2}=222 | ${arg3}=333 | ${arg4}=444
  | | Log | exp: ${expected}
  | | ${rc} | Set Variable | ${arg1} : ${arg2} : ${arg3} : ${arg4}
  | | Log | arg: ${rc}
  | | Run Keyword If  | '${rc}' == '${expected}'  
  | | ... | Log | === equal ===
  | | ... | ELSE  
  | | ... | Log | !!! diff !!!
  | | Log | **************************
  | | Should be equal | ${rc} | ${expected}
  </code></pre>
  
  <p>Result:</p>
  
  <pre><code>testArgs                                                              | FAIL |
  Several failures occurred:
  1)  : xxx : 333 : 444 != 111 : xxx : 333 : 444
  2)  : xxx : 333 : 444 != 111 : xxx : 333 : 444
  3)  :  : xxx : 444 != 111 : 222 : xxx : 444
  </code></pre>
  
  <p>I know that I can use <em>named arguments</em> to set specific keyword arguments. But this is only possible in keyword-driven testcases.</p>
  
  <p>Regards,
  Tom</p>