linux - 机器人框架 : User input on linux command prompt

标签 linux robotframework

在机器人测试中,如何为提示用户确认的脚本传递用户输入?在手动测试时,我在提示用户确认的脚本中输入是或否类型的输入。我如何在机器人中实现相同的目标? 我已经尝试在机器人测试用例中使用 echo,例如: $ 回声是 |我的脚本.pl

这工作正常并且接受用户输入为 yes,但是当 myScript.pl 在远程服务器上使用 ssh 执行命令并返回到主脚本 myScript.pl 时,它无法从管道中读取“yes”。返回后,脚本无法从管道中读取"is"。

机器人框架是否有任何内置功能可以帮助解决这个问题?或者任何其他选择?

谢谢。

最佳答案

有一个命令叫yes,它会重复输入“yes”直到被杀死。如果这也不起作用,请尝试使用 expect。

yes|./myScript.pl

或使用 expect

#!/usr/bin/expect -f
spawn ./myScript.pl
expect "yes/NO"
send "yes\r"

关于linux - 机器人框架 : User input on linux command prompt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29816739/

相关文章:

android - 无法使用带有 Appium 的 xpath 找到元素(机器人框架)

list - 如何在Robot Framework中将全局变量或套件变量设置为列表?

r - 在 Ubuntu xenial 中升级 R

html - 在 C++ linux 中使用 log4cplus 将日志写入 html 文件

Java 进程生成器 : command not found

python-3.x - DataDriver 库方法 _stats_suite 失败 : TypeError: 'encoding' is an invalid keyword argument for this function

linux - 内存充足的 Oom-killer(内存不足)(?!) - inotify

linux - Uinput - 鼠标事件不工作

python - 导入库 'SeleniumLibrary' 失败 : ModuleNotFoundError: No module named 'SeleniumLibrary' In VS Code

selenium - 选择机器人框架选项