我使用的是机器人框架,我想知道是否可以在测试用例中只运行特定的步骤。例如,如果我想做一个测试,我只需输入用户名并提交,我是否需要编写一个不同的测试用例,还是可以有条件地运行下面列出的测试用例?
换句话说,无效的Login(下面列出的Testcase)可以接受参数并只执行特定的步骤。例如,运行输入用户名和提交或运行输入密码,然后提交或运行这两种密码,然后提交。
*** Test Cases ***
Invalid Login
Open Browser To Login Page
Input Username demo
Input Password check
Submit Credentials
Login Should Have Failed
[Teardown] Close Browser谢谢!
发布于 2015-07-06 20:37:59
在我看来,最好的办法是进行单独的测试。
如果您坚持要有一个带有可选步骤的测试用例,我这样做的方法是将可选部分放在一个或多个关键字中,然后使用Run Keyword If有条件地排除一个步骤。
例如:
*** Keywords ***
| Do additional validation
| | log | doing additional validation...
*** Test Cases ***
| Invalid Login
| | Open Browser To Login Page
| | Input Username | demo
| | Input Password | check
| | Submit Credentials
| | Login Should Have Failed
| | # run the following only if "${DO_MORE}" is defined
| | Run keyword if | ${DO_MORE} == True
| | ... | Do additional validation
| | [Teardown] | Close Browser发布于 2015-07-06 20:32:12
您应该研究如何为机器人框架编写数据驱动的测试。机器人框架提供了一个很好的例子:
https://bitbucket.org/robotframework/webdemo/wiki/Home#rst-header-test-cases
发布于 2017-08-10 09:48:35
我们所做的就是使用测试名称中的标记。然后,在运行命令时,可以使用选项-i或-e (包括或排除)要运行或不运行的特定标记。所以在你的情况下:
*** Test Cases ***
Invalid Login
Open Browser To Login Page
[Tags] specific_tags
Input Username demo
[Tags] specific_tags
Input Password check
Submit Credentials
[Tags] specific_tags
Login Should Have Failed
[Teardown] Close Browser然后运行命令:robot -i specific_tags your_robot_file.robot希望它可以帮助某人,即使这个问题很老
https://stackoverflow.com/questions/31252329
复制相似问题