Home · All Classes · Modules  · QSS HELP  · QSS 案例 · VER007 HOME

QTest Class Reference
[QtTest module]

该QTEST命名空间包含所有相关的功能和声明QTestLib工具。More...

Types

Static Methods


Detailed Description

该QTEST命名空间包含所有相关的功能和声明QTestLib工具。

请参阅QTestLib Manual文档以获取有关如何编写单元测试的信息。


Type Documentation

QTest.KeyAction

这个枚举变量描述了密钥处理可能的操作。

Constant Value Description
QTest.Press 0 该键被按下。
QTest.Release 1 键被释放。
QTest.Click 2 关键是点击(按下并释放) 。

QTest.MouseAction

这个枚举变量描述了鼠标处理可能的操作。

Constant Value Description
QTest.MousePress 0 鼠标按钮被按下。
QTest.MouseRelease 1 释放鼠标按钮。
QTest.MouseClick 2 单击鼠标按钮(按下并释放) 。
QTest.MouseDClick 3 鼠标按钮双击时(按下并释放两次) 。
QTest.MouseMove 4 将鼠标指针移动。

Method Documentation

QTest.keyClick (QWidget widget, Qt.Key key, Qt.KeyboardModifiers modifier = Qt.NoModifier, int delay = -1)

模拟点击的key具有可选modifier上一个widget。如果delay大于0 ,则测试将等待delay毫秒。

示例:

 QTest.keyClick(myWidget, Qt.Key_Escape);

 QTest.keyClick(myWidget, Qt.Key_Escape, Qt.ShiftModifier, 200);

上面第一个例子模拟点击escape关键myWidget没有任何键盘功能键和无延迟。第二个例子模拟点击shift-escapemyWidget用试验的以下200毫秒的延迟。

See also QTest.keyClicks( ) 。

QTest.keyClick (QWidget widget, str key, Qt.KeyboardModifiers modifier = Qt.NoModifier, int delay = -1)

这是一个重载函数。

模拟点击的key具有可选modifier上一个widget。如果delay大于0 ,则测试将等待delay毫秒。

例如:

 QTest.keyClick(myWidget, 'a');

上面的例子中模拟点击amyWidget没有任何键盘功能键和没有测试的延迟。

See also QTest.keyClicks( ) 。

QTest.keyClicks (QWidget widget, QString sequence, Qt.KeyboardModifiers modifier = Qt.NoModifier, int delay = -1)

模拟点击一个sequence上一个键widget。任选地,一个键盘modifier可以被指定,以及一个delay(以毫秒为单位)每个键击之前的测试。

例如:

 QTest.keyClicks(myWidget, "hello world");

上面的例子中模拟点击代表的“ Hello World”的键序列myWidget没有任何键盘功能键和没有测试的延迟。

See also QTest.keyClick( ) 。

QTest.keyEvent (KeyAction action, QWidget widget, Qt.Key key, Qt.KeyboardModifiers modifier = Qt.NoModifier, int delay = -1)

发送一个Qt的关键事件widget用给定的key和一个相关的action。任选地,一个键盘modifier可以被指定,以及一个delay(以毫秒为单位)发送事件之前的测试。

QTest.keyEvent (KeyAction action, QWidget widget, str ascii, Qt.KeyboardModifiers modifier = Qt.NoModifier, int delay = -1)

这是一个重载函数。

发送一个Qt的关键事件widget用给定的键ascii和一个相关的action。任选地,一个键盘modifier可以被指定,以及一个delay(以毫秒为单位)发送事件之前的测试。

QTest.keyPress (QWidget widget, Qt.Key key, Qt.KeyboardModifiers modifier = Qt.NoModifier, int delay = -1)

模拟按下一个key具有可选modifier上一个widget。如果delay大于0 ,则测试将等待delay毫秒。

Note:在某些时候,你应该使用松开按键keyRelease( ) 。

See also QTest.keyRelease()和QTest.keyClick( ) 。

QTest.keyPress (QWidget widget, str key, Qt.KeyboardModifiers modifier = Qt.NoModifier, int delay = -1)

这是一个重载函数。

模拟按下一个key具有可选modifier上一个widget。如果delay大于0 ,则测试将等待delay毫秒。

Note:在某些时候,你应该使用松开按键keyRelease( ) 。

See also QTest.keyRelease()和QTest.keyClick( ) 。

QTest.keyRelease (QWidget widget, Qt.Key key, Qt.KeyboardModifiers modifier = Qt.NoModifier, int delay = -1)

模拟释放key具有可选modifier上一个widget。如果delay大于0 ,则测试将等待delay毫秒。

See also QTest.keyPress()和QTest.keyClick( ) 。

QTest.keyRelease (QWidget widget, str key, Qt.KeyboardModifiers modifier = Qt.NoModifier, int delay = -1)

这是一个重载函数。

模拟释放key具有可选modifier上一个widget。如果delay大于0 ,则测试将等待delay毫秒。

See also QTest.keyClick( ) 。

QTest.mouseClick (QWidget widget, Qt.MouseButton button, Qt.KeyboardModifiers modifier = 0, QPoint pos = QPoint(), int delay = -1)

模拟点击鼠标button具有可选modifier上一个widget。点击的位置被定义为pos,默认位置是widget的中心。如果delay被指定,测试将等待指定的毫秒金额前按下并释放按钮之前。

See also QTest.mousePress()和QTest.mouseRelease( ) 。

QTest.mouseDClick (QWidget widget, Qt.MouseButton button, Qt.KeyboardModifiers modifier = 0, QPoint pos = QPoint(), int delay = -1)

模拟双击鼠标button具有可选modifier上一个widget。点击的位置被定义为pos,默认位置是widget的中心。如果delay被指定,测试将等待指定的毫秒数量每次按下和释放之前。

See also QTest.mouseClick( ) 。

QTest.mouseEvent (MouseAction action, QWidget widget, Qt.MouseButton button, Qt.KeyboardModifiers stateKey, QPoint pos, int delay = -1)

QTest.mouseMove (QWidget widget, QPoint pos = QPoint(), int delay = -1)

将鼠标指针移动到widget。如果pos没有指定,将鼠标指针移动到窗口小部件的中心。如果delay(以毫秒为单位)给出,测试将移动鼠标指针前等待。

QTest.mousePress (QWidget widget, Qt.MouseButton button, Qt.KeyboardModifiers modifier = 0, QPoint pos = QPoint(), int delay = -1)

模拟按下鼠标button具有可选modifier上一个widget。该位置被定义为pos,默认位置是widget的中心。如果delay被指定,测试将等待指定的毫秒金额按前。

See also QTest.mouseRelease()和QTest.mouseClick( ) 。

QTest.mouseRelease (QWidget widget, Qt.MouseButton button, Qt.KeyboardModifiers modifier = 0, QPoint pos = QPoint(), int delay = -1)

模拟松开鼠标button具有可选modifier上一个widget。释放的位置被定义为pos,默认位置是widget的中心。如果delay被指定,测试将等待指定的毫秒量释放按钮之前。

See also QTest.mousePress()和QTest.mouseClick( ) 。

QTest.qSleep (int ms)

休眠ms毫秒,阻止执行的测试。 qSleep ( )不会做任何事件处理,并留下您的测试反应迟钝。网络通信可能会超时而睡。使用qWait( )做非阻塞睡觉。

ms必须大于0 。

Note:该qSleep ( )函数调用任一nanosleep()在UNIX或Sleep()上的窗口,因此时间在qSleep使用了()的精度依赖于操作系统。

例如:

 QTest.qSleep(250);

See also qWait( ) 。

QTest.qWait (int ms)

等待ms毫秒。在等待时,事件将被处理,你的测试将保持响应用户界面事件或网络通信。

例如:

 int i = 0;
 while (myNetworkServerNotResponding() && i++ < 50)
     QTest.qWait(250);

上面的代码将等待,直到网络服务器响应最多约12.5秒。

See also QTest.qSleep( ) 。

bool QTest.qWaitForWindowShown (QWidget window)

等待,直到window显示在屏幕上。这主要是异步系统,如X11 ,其中一个窗口将被映射被要求出示自己在屏幕上后,屏幕一段时间非常有用。返回True。

例如:

 QWidget widget;
 widget.show();
 QTest.qWaitForWindowShown(&widget);

此功能被引入Qt的4.6 。




PyQt 4.10.3 for X11 Copyright © Riverbank Computing Ltd and Nokia 2012 Qt 4.8.5