Doc: Add doc for QSKIP
Change-Id: Ib8cd1b4926652984b41b5a05bf4dbf3214f2856f Reviewed-by: Topi Reiniö <topi.reinio@qt.io>bb10
parent
71cdc95006
commit
df3da2c1d1
|
|
@ -0,0 +1,66 @@
|
|||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2018 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the documentation of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:BSD$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** BSD License Usage
|
||||
** Alternatively, you may use this file under the terms of the BSD license
|
||||
** as follows:
|
||||
**
|
||||
** "Redistribution and use in source and binary forms, with or without
|
||||
** modification, are permitted provided that the following conditions are
|
||||
** met:
|
||||
** * Redistributions of source code must retain the above copyright
|
||||
** notice, this list of conditions and the following disclaimer.
|
||||
** * Redistributions in binary form must reproduce the above copyright
|
||||
** notice, this list of conditions and the following disclaimer in
|
||||
** the documentation and/or other materials provided with the
|
||||
** distribution.
|
||||
** * Neither the name of The Qt Company Ltd nor the names of its
|
||||
** contributors may be used to endorse or promote products derived
|
||||
** from this software without specific prior written permission.
|
||||
**
|
||||
**
|
||||
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
//! [0]
|
||||
|
||||
if ( tst_Databases::getMySqlVersion( db ).section( QChar('.'), 0, 0 ).toInt()<5 )
|
||||
QSKIP( "Test requires MySQL >= 5.0");
|
||||
//! [0]
|
||||
//! [1]
|
||||
void tst_Skip::test_data()
|
||||
{
|
||||
QTest::addColumn<bool>("bool");
|
||||
QTest::newRow("local 1") << false;
|
||||
QTest::newRow("local 2") << true;
|
||||
|
||||
QSKIP("skipping all");
|
||||
}
|
||||
//! [1]
|
||||
void tst_Skip::test_data()
|
||||
|
|
@ -382,6 +382,7 @@
|
|||
\li \l {Chapter 3: Simulating GUI Events}{Simulating GUI Events}
|
||||
\li \l {Chapter 4: Replaying GUI Events}{Replaying GUI Events}
|
||||
\li \l {Chapter 5: Writing a Benchmark}{Writing a Benchmark}
|
||||
\li \l {Chapter 6: Skipping Tests with QSKIP}{Skipping Tests}
|
||||
\endlist
|
||||
|
||||
*/
|
||||
|
|
@ -715,6 +716,7 @@
|
|||
|
||||
\previouspage {Chapter 4: Replaying GUI Events}{Chapter 4}
|
||||
\contentspage {Qt Test Tutorial}{Contents}
|
||||
\nextpage {Chapter 6: Skipping Tests with QSKIP}{Chapter 6}
|
||||
|
||||
\title Chapter 5: Writing a Benchmark
|
||||
\brief How to write a benchmark.
|
||||
|
|
@ -765,3 +767,48 @@
|
|||
for more information on these tools and a simple graphing example.
|
||||
|
||||
*/
|
||||
/*!
|
||||
\page qttestlib-tutorial6.html
|
||||
|
||||
\previouspage {Chapter 5: Writing a Benchmark}{Chapter 5}
|
||||
\contentspage {Qt Test Tutorial}{Contents}
|
||||
|
||||
\title Chapter 6: Skipping Tests with QSKIP
|
||||
\brief How to skip tests in certain cases.
|
||||
|
||||
\section2 Using QSKIP(\a description) in a test function
|
||||
|
||||
If the QSKIP() macro is called from a test function, it stops
|
||||
the execution of the test without adding a failure to the test log.
|
||||
It can be used to skip tests that are certain to fail. The text in
|
||||
the QSKIP \a description parameter is appended to the test log,
|
||||
and explains why the test was not carried out.
|
||||
|
||||
QSKIP can be used to skip testing when the implementation is not yet
|
||||
complete or not supported on a certain platform. When there are known
|
||||
failures, it is recommended to use QEXPECT_FAIL, so that the test is
|
||||
always completely executed.
|
||||
|
||||
Example of QSKIP in a test function:
|
||||
|
||||
\snippet code/doc_src_qtqskip.cpp 0
|
||||
|
||||
In a data-driven test, each call to QSKIP() skips only the current
|
||||
row of test data. If the data-driven test contains an unconditional
|
||||
call to QSKIP, it produces a skip message for each row of test data.
|
||||
|
||||
\section2 Using QSKIP in a _data function
|
||||
|
||||
If called from a _data function, the QSKIP() macro stops
|
||||
execution of the _data function. This prevents execution of the
|
||||
associated test function.
|
||||
|
||||
See below for an example:
|
||||
|
||||
\snippet code/doc_src_qtqskip.cpp 1
|
||||
|
||||
\section2 Using QSKIP from initTestCase() or initTestCase_data()
|
||||
|
||||
If called from \c initTestCase() or \c initTestCase_data(), the
|
||||
QSKIP() macro will skip all test and _data functions.
|
||||
*/
|
||||
|
|
|
|||
Loading…
Reference in New Issue