RobotFramework(一)之None与null的使用

最近看到很多人问在RobotFramework中怎么比较None与null?或者问能不能用run keyword if比较变量与null、None啊?答案是肯定可以的,但是很多人忽略了空字符串。下面一一述来。


一、概念

1.空字符串:空字符串是指在内存中分配了存储空间,只是值的长度是0,在RobotFramework中表示方法:”;

2.None与null:None与null是指没有在内存中分配空间的,所以是没有值的。为什么None与null放一起说,都是一样的,只是在一些运行上可能不认None,但是null是基本都认的。在RobotFramework中会把null转换成Nome,下面会有例子说明。在RobotFramework中表示方法: None N o n e 、 {null},理论上不区分大小写,但是None如果写成none是不认的很奇怪。


二、例子

1.空字符串

(1)下面打开百度,取一下值,然后与null比较


可以看到结果:失败,失败的原因是空字符串不等于None,可以看到明明我写的null,但是结果却显示None,验证了我上面说的会把null转成None。


(2)来看看用run keyword if比较


结果很明显,是打印了456,因为空字符串是不等于null的。


(3)使用run keyword if比较空字符串


结果:是正确的,输出了123



2.None与NULL

None与null我就一起说了,可以看到最后一行,是拿None与null比较


结果:来看结果,都是输出了123,再次证明None与null是一样的,所以任选其一使用就行啦。



3.注意事项

None与null,一定要注意格式,如果直接写成了 testvalue==nullnullnull t e s t v a l u e == n u l l , 这 种 比 较 是 直 接 变 量 与 n u l l 这 个 字 符 串 比 较 , 字 符 串 的 值 是 n u l l , 所 以 如 果 {test value}的值刚好等于null了,则会输出123


结果:可以看到输出了123,但是当${test value}的值不为null,则会输出456,因为这个不是与null对象比较,而是与字符串值为null的对象比较。



总结:对于空字符串与None比较,其最重要的一点就是要弄清楚,你比较的这个对象到底是空字符串还是None,不要看到没值就认为是None。就好像那句,你看到的不一定是真的。哈哈



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值