问题描述
我的目标是为 webservice 编写测试用例,其中还验证了用户的年龄输入(服务资格)。我有一个请求 XML,我按如下方式填写出生日期;
${updatedXml}= Set Element Text ${root} ${randomdob} xpath=.//birthdate
现在,为了填充出生日期(randomdob),我使用了 Get Current Date 函数,并带有增量:
${birthdate}= Get Current Date result_format=%Y-%m-%d increment=-6391day
然而,这并不能使它“真正”随机。我宁愿这样使用 FakerLibrary.date_of_birth :
${randomdob}= FakerLibrary.date_of_birth minimum_age=14 maximum_age=17
现在,fakerlibrary 的这个函数的输出似乎是 python datetime.date(通过评估验证),但我不知何故无法使用它来填充我的 xml 元素中的变量:
TypeError: cannot serialize datetime.date(2004,3,27) (type date)。
当我将它登录到控制台时,我得到:
2004-03-27
如何将输出转换为普通字符串,以便用它填充 XML 元素? 我试过“转换为字符串”,但这似乎不起作用。
解决方法
使用 Convert Date
将其转换为具有所需格式的字符串:
${randomDob}= Convert Date ${randomDob} result_format=%Y-%m-%d