gpt4 book ai didi

squish - 如何在没有X服务器的情况下通过squish运行GUI测试

转载 作者:行者123 更新时间:2023-12-02 21:19:27 25 4
gpt4 key购买 nike

我也有同样的疑问...如何运行测试用例来在后台测试 AUT,以便我可以在我的机器上执行其他一些任务。虽然在挤压中进行测试时运行了很多弹出窗口,并且 AUT 功能不断出现在您的屏幕上,当您正在处理其他事情时,这很烦人。

最佳答案

据我了解,问题的关键时刻是与测试并行工作,即模拟键盘和鼠标事件。所以“没有X服务器”我理解为“不影响真实用户操作”。

为了实现这个目标,当我创建挤压 GUI 测试时,我在 Linux 上使用了 Xvfb,在 Windows 上使用了 sysinternals 桌面 ( http://technet.microsoft.com/en-us/sysinternals/cc817881.aspx )。我可以在运行测试的同时并行工作。

我将这样的脚本保存到/etc/init.d/xvfb

#! /bin/sh    

### BEGIN INIT INFO
# Provides: Xvfb
# Required-Start: $local_fs $remote_fs
# Required-Stop:
# X-Start-Before:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Virtual Frame Buffer
### END INIT INFO

XVFB=/usr/bin/Xvfb
XVFBARGS=":1 -screen 5 2560x1440x24 -ac"
PIDFILE=/var/run/xvfb.pid
case "$1" in
start)
echo -n "Starting Xvfb"
start-stop-daemon --start --pidfile $PIDFILE --make-pidfile --background --exec $XVFB -- $XVFBARGS
echo "."
;;
stop)
echo -n "Stopping Xvfb"
start-stop-daemon --stop --pidfile $PIDFILE
echo "."
;;
restart)
$0 stop
sleep 2
$0 start
;;
*)
echo "Usage: /etc/init.d/xvfb {start|stop|restart}"
exit 1
esac

exit 0

现在我可以执行/etc/init.d/xvfb start/etc/init.d/xvfb stop。另外,要在启动时自动启动 Xvfb,您可以使用:update-rc.d xvfb defaults 92

此后,在开始 GUI 测试之前,我在终端控制台中使用 export DISPLAY=":1.5" 来开始测试。然后测试就可以在没有可见 GUI 触摸的情况下运行,并且我可以并行工作。

至于“桌面”(适用于 Windows) - 它会在 Windows 中创建额外的 4 个桌面,您可以在其中一个桌面上开始测试,然后切换到另一个桌面来工作。

关于squish - 如何在没有X服务器的情况下通过squish运行GUI测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28601587/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com