Robotframework 如何在robot framework测试用例中打开命令行终端并执行一些命令?

Robotframework 如何在robot framework测试用例中打开命令行终端并执行一些命令?,robotframework,Robotframework,我想执行以下步骤: 打开运行Robot测试用例的同一台ubuntu机器的终端,并执行一些命令 编写了Robot框架测试用例,如下所示: *** Settings *** Library Telnet *** Testcases *** testcase1 open connection 127.0.0.1 write gnome terminal write

我想执行以下步骤:

打开运行Robot测试用例的同一台ubuntu机器的终端,并执行一些命令

编写了Robot框架测试用例,如下所示:

*** Settings ***
Library         Telnet


*** Testcases ***

testcase1
    open connection          127.0.0.1
    write                    gnome terminal
    write                    ifconfig -a eth0
但它抛出“Errno 111-连接被拒绝”错误

如果有人对此有想法,请指导我


提前感谢您的帮助。

如果您实际上不需要打开终端窗口,robot有一个库,允许您通过关键字运行外部命令。例如:

*** Settings ***
| Library | Process

*** Test cases ***
| Example
| | Run process | ifconfig | -a | eth0

这里的答案是双重的

在大多数(包括Ubuntu)Linux发行版中,Telnet默认关闭。你的情况可能也是如此。 您可以在Ubuntu机器上运行telnet服务器,甚至可以将其配置为在启动时运行(关于如何运行有很多线程)


但正如其他人之前所说,在本地机器上运行Telnet可能并不是你真正想要的。您可以使用进程库在本地主机上运行进程,甚至内置库也有一些关键字。

创建.bat文件并在其中写入命令。如果.bat文件位于其他文件夹中,请使用cd命令,然后使用所需的命令

类似bat文件的示例 cd C:\robotFramework\runner java abc.class
使用以下syntex

运行xyz.bat:为此,请使用库操作系统 或
运行进程xyz.bat:对于这个使用库进程

您真的需要打开一个终端窗口,还是只需要执行命令?当你说“…我的测试在哪里运行”时,你的意思是真的,还是你正在尝试在你远程登录的机器上运行ifconfig命令?谢谢你的回答。这就是我想要的。但是如果我们执行“scapy”来代替“ifconfig”,它就不起作用了。只是把它挂起来。没有错误。有什么线索吗?@rcubefeather:我不知道。我不知道斯卡皮是干什么的。也许你给它的理由是让它以交互方式运行。谢谢。。。让我试试scapy和update。简单地说,scapy是一个开源的、基于python的数据包生成工具。如果我们执行“scapy”命令,我们将得到交互式shell。@rcubeather:您不能从robot内部运行交互式shell。这就是为什么当你调用这个命令时它会挂起的原因。这个操作是关于Ubuntu linux的——一个bat文件(windows)并不能解决这个问题。