1、为什么要自定义库2、下载官方示例robotdemo输入'k + 1’,则'k’为非法输入,需要判断出'k’为Invalid button; 2.输入的表达式为空,则需要判断为Invalid expression; 3.表达式的结果不合法的情况下,也应该进行判断,如'1/0’,应该判断为Division by zero
3、运行用例robotdemo中包含3个robot文件:data_driven、gherkin、keyword_driven 这3个用例集分别包含了:数据驱动、关键字驱动、gherkin语法(Given, When, Then. Step Organization) 运行用例文件查看结果:
robot data_driven.robot 4、读用例4.1 data_driven.robot4.1.1 Settings4.1.2 Test cases前面在Settings中有描述到 Test template,为所有的cases都定义了模板,所以用例都会按照这个模板的步骤进行,就不需要再次进行描述啦
4.1.3 KeywordsKeywords中定义了2个关键字:Calculate和Calculation should fail。 Calculate就是前面提到定义的模板,Calculate中定义了2个参数,定义模板后,直接输入参数就可以按照Calculate的步骤执行了,从而实现了数据驱动 Push buttions是CalculateLibrary.py定义的关键字,在CalculateLibrary.py的同名类中,定义了一个push_buttons(self,expression)方法 C${expression}= ,这个类型的表达式是什么意思呢?经过验证 C 应该是concat 的意思,将2个字符串进行连接,就是在${expression} 后再加一个= 号,如:${expression} 的值为1+2 ,则C${expression}= 的值为1+2=
Calculatuion should fail关键字中,用到了一个表达式${error} = Should cause error C${expression}= ,这个表达式是将Should cause error C${expression}= 的值赋给了${error} ,这里相当于是定义了一个变量
4.1.4 通过阅读用例,理解不了每个关键字的实现过程怎么办?4.2 没有啦5、总结keyword_driven.robot中用到的关键字为Push button和Result should be,连续输入几个数据字符,最后也能和Result should be中输入的预期结果进行比较,这个为什么呢?每个Push button的结果是存在哪里呢?
RobotFramework的关键字是不区分大小写的喔
写在最后顺手点点点底部的小广告支持下,免得在峡谷迷路^_^ 持续不断码字努力中
|