normalize использует os.path.normpath, который устраняет двойную косую черту, но не вашу обратную косую черту.
В следующем примере экранированное пространство существует только в файле робота.
*** Settings ***
Library OperatingSystem
*** Test Cases ***
Handle Spaces
${path}= Join Path ~/Library/Application\ Support Foo.txt
Log To Console ${path}
File Should Exist ${path}
Обратите внимание, что Log To Console
не имеет пробелов.
==============================================================================
Path
==============================================================================
Handle Spaces
C:\Users\eddy.pronk\Library\Application Support\Foo.txt
| PASS |
------------------------------------------------------------------------------
Path | PASS |
1 critical test, 1 passed, 0 failed
1 test total, 1 passed, 0 failed
==============================================================================
Output: C:\work\output.xml
Log: C:\work\log.html
Report: C:\work\report.html
Протестировано с Python 2.7.14 и robotframework 3.0.4