2

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

4

2 回答 2

5

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

为此,当我创建 squish 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 startor /etc/init.d/xvfb stop。此外,要在启动时自动启动 Xvfb,您可以使用:update-rc.d xvfb defaults 92

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

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

于 2015-09-30T04:28:46.610 回答
0

您可以通过 SquishServer 运行一些现有的测试脚本,同时还可以打开 SquishIDE 以编写更多测试。这基本上是你要问的吗?

我已经安装了 squish-5.1.1-qt48x-win32-msvc9。我还使用一些虚拟机来运行测试。虽然测试在这些虚拟机上运行(在我的本地计算机上运行,​​但它可能是服务器),但我打开了 SquishIDE 并开发了更多测试。

获取此配置的起点应该是此处的文件:

C:\squish-5.1.1-qt48x-win32-msvc9\squish-5.1.1-qt48x-win32-msvc9\examples\regressiontesting\

看看它们,因为我用过它们。确实,我对它们进行了一些修改,你需要一些 python 知识。如果你不太懂这种语言,你应该打电话给懂它的人。

使用这些文件,您可以指定要运行哪些测试,配置 squish_server,并且在测试运行后,您将获得一些 [*.html] 文件形式的报告。

希望这可以帮助。您还可以在此处找到一些其他帮助:http: //doc.froglogic.com/squish/latest/第 17章。用户指南

于 2015-05-12T14:11:00.187 回答