测试/系统-xterm,pyexpect作为测试自动化的中间人

仙童
仙童
订阅者
643
文章
0
粉丝
测试交流评论185字数 814阅读2分42秒阅读模式
摘要所以这是一个自动化测试环境,我正试图找出。 我的愿景是: 定义:目标=运行UBOOT的arm linux 主机=Linux机器控制目标 方法=PyEXPECT或同等 ...

所以这是一个自动化测试环境,我正试图找出。

我的愿景是:文章源自玩技e族-https://www.playezu.com/180518.html

  • 定义:目标=运行UBOOT的arm linux
  • 主机=Linux机器控制目标
  • 方法=PyEXPECT或同等
  • COMMS Method=linux上的USB串行,即:/dev/ttyUSB0示例
  • 类GUI窗口=Linux XTERM(或其他类似窗口)

我想从Python开始:文章源自玩技e族-https://www.playezu.com/180518.html

  1. 使用PyExpect启动XTERM终端。
  2. 我想打开一个串行端口,即:/dev/ttyUSB0
  3. 我想发送到的串行端口(来自目标)有什么内容
    XTERM, 在PyExpect中,我希望python成为;“中间的人”;
  4. 人类在XTERM中输入的内容-转到串行端口
  5. PyExpect发送的内容通常应作为输入发送到目标
  6. 如果我能把事情直接交给XTERM,那就太好了,但不能
    必修的。

用例示例:文章源自玩技e族-https://www.playezu.com/180518.html

PyExpect通过TCP/IP套接字和一种称为SCPI的协议控制多个设备-电源和示波器等文章源自玩技e族-https://www.playezu.com/180518.html

SCIPI的WIKIhttps://en.wikipedia.org/wiki/Standard_Commands_for_Programmable_Instruments文章源自玩技e族-https://www.playezu.com/180518.html

在启动期间-我们有时需要发送命令(“键入字母Q”)进入UBOOT控制台。这让我们可以停止/停止引导过程,并将命令插入到UBOOT中,以TFTP引导/刷新设备-希望将此作为PyEXPECT脚本过程的一部分。文章源自玩技e族-https://www.playezu.com/180518.html

HOWEVER - we also need to reasonably see the output from the target. Later in the process (when the application is running after target Linux boots) the target also outputs a number of ANSI-escape sequences to show a status screen - all of these ANSI sequences XTERM fully understands - hence the idea of using XTERM as the display window.文章源自玩技e族-https://www.playezu.com/180518.html

大多数情况下,目标的输出(通过/dev/ttyUSB0)需要(A)进入PyEXPECT流,以便它可以执行测试序列,但也需要转到(B)“未掺杂”的xterm窗口,以便人类可以观察测试序列期间发生的事情。是的,它还需要转到一个名为“的文件”;测验日志-但这是次要的。文章源自玩技e族-https://www.playezu.com/180518.html

此外,测试中有时会出现问题,为了调试问题,人们需要访问键盘(终端输入),这样他们就可以键入命令并找出出了什么问题,因此“测试”是“测试”;连接到串行端口的xterm“;是我最好的例子。或者类似MINICOM的东西-但在私有Xterm窗口中文章源自玩技e族-https://www.playezu.com/180518.html

如果我能通过,那太好了;pyexpect–以这种方式启动(N)xterm文章源自玩技e族-https://www.playezu.com/180518.html

如果我能指导所有人,那就太好了;io“;从xterm到连接到PyEXPECT的套接字,那么PyEXPECT可以是;“中间人”;在串行端口和XTERM之间

我的问题是,我还没有找到一种方法来做到这一点,我确信其他人已经做到了这一点,我正在寻找更好/更简单的替代想法,等等
或者一些我不知道的Python模块可以为我做很多这方面的工作。

我使用XTERM的目标是:它有一个ANSI解码器和一个显示引擎,足以满足我的目的(即:它解码转义序列以放置光标、擦除屏幕和绘制粗体颜色)。我没有嫁给XTERM。。。

问题是我真的需要同时使用多个xterm,所有这些都是从一个中心python脚本编排的

我使用PyEXPECT的目标是:它是测试自动化的一个很棒的工具

 
匿名

发表评论

匿名网友
确定

拖动滑块以完成验证